mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 07:14:30 +02:00
8156071: List.of: reduce array copying during creation
Reviewed-by: psandoz, redestad
This commit is contained in:
parent
ea27a54bf0
commit
88d75c9ad5
6 changed files with 203 additions and 18 deletions
|
@ -842,7 +842,7 @@ public interface List<E> extends Collection<E> {
|
|||
* @since 9
|
||||
*/
|
||||
static <E> List<E> of(E e1, E e2, E e3) {
|
||||
return new ImmutableCollections.ListN<>(e1, e2, e3);
|
||||
return ImmutableCollections.ListN.fromTrustedArray(e1, e2, e3);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -861,7 +861,7 @@ public interface List<E> extends Collection<E> {
|
|||
* @since 9
|
||||
*/
|
||||
static <E> List<E> of(E e1, E e2, E e3, E e4) {
|
||||
return new ImmutableCollections.ListN<>(e1, e2, e3, e4);
|
||||
return ImmutableCollections.ListN.fromTrustedArray(e1, e2, e3, e4);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -881,7 +881,7 @@ public interface List<E> extends Collection<E> {
|
|||
* @since 9
|
||||
*/
|
||||
static <E> List<E> of(E e1, E e2, E e3, E e4, E e5) {
|
||||
return new ImmutableCollections.ListN<>(e1, e2, e3, e4, e5);
|
||||
return ImmutableCollections.ListN.fromTrustedArray(e1, e2, e3, e4, e5);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -902,8 +902,8 @@ public interface List<E> extends Collection<E> {
|
|||
* @since 9
|
||||
*/
|
||||
static <E> List<E> of(E e1, E e2, E e3, E e4, E e5, E e6) {
|
||||
return new ImmutableCollections.ListN<>(e1, e2, e3, e4, e5,
|
||||
e6);
|
||||
return ImmutableCollections.ListN.fromTrustedArray(e1, e2, e3, e4, e5,
|
||||
e6);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -925,8 +925,8 @@ public interface List<E> extends Collection<E> {
|
|||
* @since 9
|
||||
*/
|
||||
static <E> List<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7) {
|
||||
return new ImmutableCollections.ListN<>(e1, e2, e3, e4, e5,
|
||||
e6, e7);
|
||||
return ImmutableCollections.ListN.fromTrustedArray(e1, e2, e3, e4, e5,
|
||||
e6, e7);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -949,8 +949,8 @@ public interface List<E> extends Collection<E> {
|
|||
* @since 9
|
||||
*/
|
||||
static <E> List<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8) {
|
||||
return new ImmutableCollections.ListN<>(e1, e2, e3, e4, e5,
|
||||
e6, e7, e8);
|
||||
return ImmutableCollections.ListN.fromTrustedArray(e1, e2, e3, e4, e5,
|
||||
e6, e7, e8);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -974,8 +974,8 @@ public interface List<E> extends Collection<E> {
|
|||
* @since 9
|
||||
*/
|
||||
static <E> List<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9) {
|
||||
return new ImmutableCollections.ListN<>(e1, e2, e3, e4, e5,
|
||||
e6, e7, e8, e9);
|
||||
return ImmutableCollections.ListN.fromTrustedArray(e1, e2, e3, e4, e5,
|
||||
e6, e7, e8, e9);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1000,8 +1000,8 @@ public interface List<E> extends Collection<E> {
|
|||
* @since 9
|
||||
*/
|
||||
static <E> List<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9, E e10) {
|
||||
return new ImmutableCollections.ListN<>(e1, e2, e3, e4, e5,
|
||||
e6, e7, e8, e9, e10);
|
||||
return ImmutableCollections.ListN.fromTrustedArray(e1, e2, e3, e4, e5,
|
||||
e6, e7, e8, e9, e10);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1042,7 +1042,7 @@ public interface List<E> extends Collection<E> {
|
|||
case 2:
|
||||
return new ImmutableCollections.List12<>(elements[0], elements[1]);
|
||||
default:
|
||||
return new ImmutableCollections.ListN<>(elements);
|
||||
return ImmutableCollections.ListN.fromArray(elements);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue