说,我想快速创建一个包含1000个元素的列表。实现这一目标的最佳方法是什么?
答案 0 :(得分:16)
您可以使用Collections.nCopies
。
但请注意,返回的列表是不可变的。实际上,文档说“它新分配的数据对象很小(它包含对数据对象的单个引用)”。
如果您需要一个可变列表,您可以执行类似
的操作List<String> hellos = new ArrayList<String>(Collections.nCopies(1000, "Hello"));
如果您想要1000个不同的对象,可以使用
List<YourObject> objects = Stream.generate(YourObject::new)
.limit(1000)
.collect(Collectors.toList());
同样,不保证结果列表实现的功能。如果您需要,请说ArrayList
,您可以
...
.collect(ArrayList::new);
答案 1 :(得分:0)
最快:int[] myList = new int[1000]
将包含等于零的1000个元素。但我确信它不适合你的需要。告诉我们你需要什么,我可以提供帮助:)。