Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Java8对项目进行编号?_Java_Java 8 - Fatal编程技术网

如何使用Java8对项目进行编号?

如何使用Java8对项目进行编号?,java,java-8,Java,Java 8,有一个清单 List<String> items = new ArrayList<>(); items.add("abcd"); items.add("efgh"); items.add("ijkl"); items.add("mnop"); 我是Java8的初学者。我正在尝试使用Java8的一些技巧。请提供帮助。您可以使用IntStream进行索引: IntStream.range(0,items.size()).forEach(i -> System.o

有一个清单

List<String> items = new ArrayList<>();
items.add("abcd");
items.add("efgh");
items.add("ijkl");
items.add("mnop");

我是Java8的初学者。我正在尝试使用Java8的一些技巧。请提供帮助。

您可以使用
IntStream
进行索引:

IntStream.range(0,items.size()).forEach(i -> 
  System.out.println((i+1) + ". " + items.get(i)));

如果需要数字循环变量,请使用
for
循环。您仍然可以对列表使用
get

for (int i = 0; i < items.size(); i++) {
  System.out.println( (i+1) + " " + items.get(i) );
}
for(int i=0;i
只需使用一个
for(int i=0;这与在Java 7中使用的方法相同:使用for循环和每次迭代时递增的计数器。如果我们这样做,让我们一直这样做。我会选择一个版本,该版本可以压缩两个流,并避免通过索引访问数组。upvote。不用。for循环工作得很好。:-)这有利于学习,但不会增加太多可读性。流用于更复杂的任务。@Thilo:为了挑剔,该代码至少需要Java 2才能工作。还是老样子though@Holger:为什么?我认为集合类是在1.2中添加到标准库的,但是代码没有显式地使用它们。可能是第三方类。@Thilo:如果您只关心语法,那么您是对的。
for (int i = 0; i < items.size(); i++) {
  System.out.println( (i+1) + " " + items.get(i) );
}