我经常需要从第二个元素开始遍历 List。例如这里是一列:
List<String> column = Arrays.asList("HEADER", "value1", "value2", "value3");
Run Code Online (Sandbox Code Playgroud)
我只需要打印值。
我看到三种方法:
使用子列表:
for (String s : column.subList(1, column.size())) {
System.out.println(s);
}
Run Code Online (Sandbox Code Playgroud)使用 ListIterator
for (ListIterator<String> iter = column.listIterator(1); iter.hasNext(); ) {
System.out.println(iter.next());
}
Run Code Online (Sandbox Code Playgroud)使用索引
for (int i = 1; i < column.size(); i++) {
System.out.println(column.get(i));
}
Run Code Online (Sandbox Code Playgroud)考虑到可读性、最佳实践和性能,最受青睐的是什么?
在我看来 sublist 解决方案更具可读性,但我在实践中很少看到它。与索引解决方案相比,它是否有任何明显的不足?