如果不重复只给5?
,我该如何做到这一点?List<Integer> l = new ArrayList<Integer>();
for (int i = 1; i <= 5; i++) {
l.add(i);
}
答案 0 :(得分:7)
l.addAll(Arrays.asList(1, 2, 3, 4, 5));
或者,您可以使用指定的值
对其进行初始化List<Integer> l = Arrays.asList(1, 2, 3, 4, 5);
答案 1 :(得分:4)
List<Integer> l = Arrays.asList(1, 2, 3, 4, 5);
或使用Java 8流:
List<Integer> l = IntStream.rangeClosed(1, 5).boxed().collect(Collectors.toList());
答案 2 :(得分:0)
你的循环需要一些上限。如果您不像在代码段中那样硬编码,则值必须来自某个地方。
您可以将此构造函数用于ArrayList数据结构: public ArrayList(int initialCapacity) 并完全绕过循环,但你没有初始化器。
答案 3 :(得分:0)
查看Guava Ranges和this thread。
简而言之,
ContiguousSet.create(Range.closed(1, 500), DiscreteDomain.integers()).asList()
答案 4 :(得分:0)
一种简单的方法是使用Java 8流:
List<Integer> intList = IntStream.rangeClosed(1, 5).collect(Collectors.toList());