一、普通for循环遍历List
List<String> list = new ArrayList<>(); list.add("apple"); list.add("banana"); list.add("orange"); for(int i = 0; i < list.size(); i++){ System.out.println(list.get(i)); }
普通for循环是最基本的遍历List的方法。它通过List的size()方法获取List的长度,然后用循环依次获取List中的每个元素。普通for循环的缺点是代码比较冗长,易错。
二、foreach循环遍历List
List<String> list = new ArrayList<>(); list.add("apple"); list.add("banana"); list.add("orange"); for(String s : list){ System.out.println(s); }
foreach循环是Java5引进的一种新的循环结构,用于遍历数组或集合。它的语法比较简洁,只需要提供一个类型与名称,就可以遍历整个数组或集合。foreach循环的缺点是无法获取索引值,主要用于遍历读取操作。
三、Iterator遍历List
List<String> list = new ArrayList<>(); list.add("apple"); list.add("banana"); list.add("orange"); Iterator<String> it = list.iterator(); while(it.hasNext()){ System.out.println(it.next()); }
Iterator是Java提供的一种遍历集合的方式,它可以顺序遍历集合中的元素,也可以通过remove()方法删除集合中的元素,而且可以处理多种集合类型。Iterator的缺点是代码比较冗长,需要创建一个Iterator对象。
四、ListIterator遍历List
List<String> list = new ArrayList<>(); list.add("apple"); list.add("banana"); list.add("orange"); ListIterator<String> it = list.listIterator(); while(it.hasNext()){ System.out.println(it.next()); } while(it.hasPrevious()){ System.out.println(it.previous()); }
ListIterator是Iterator的子接口,它具有Iterator的所有功能,还可以通过previous()方法逆序遍历集合中的元素。ListIterator的缺点是只能用于List集合类型。
五、Lambda表达式遍历List
List<String> list = new ArrayList<>(); list.add("apple"); list.add("banana"); list.add("orange"); list.forEach((s) -> System.out.println(s));
Lambda表达式是Java8引入的一种新特性,它可以简化集合遍历中的代码量,同时提高代码可读性与代码质量。Lambda表达式的缺点是需要Java8及以上版本的支持。
小结
通过以上的五种方法,我们可以实现对List集合的遍历操作。不同的方式具有不同的特点和优缺点,因此在实际开发中,需要根据具体的需求和场景进行选择。总之,熟练掌握List的遍历操作,可以帮助我们更加高效地开发Java应用程序。