将不可变List
的ArrayList
构造函数传递给:
List<YourClass> list = new ArrayList<>(Collections.nCopies (n-1, object1));
list.add(object2);
Run Code Online (Sandbox Code Playgroud)
要么
List<YourClass> list = new ArrayList<>(Collections.nCopies (n, object1));
list.set(someIndex, object2);
Run Code Online (Sandbox Code Playgroud)
在Java 8中,您可以使用Stream
s:
List<YourClass> list =
IntStream.range(0,n)
.mapToObj(i -> i != specialIndex ? object1 : object2)
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)