【Java】List集合遍历的五种方法

🎊专栏【Java】

🌺每日一句:人生最重要的就是要清醒的认知

⭐欢迎并且感谢大家指出我的问题

目录

1.通过for循环配合List接口中的size()和get(index i)的方法

2.使用Iterator迭代器及其方法遍历集合

🍔迭代器

🍔具体操作

3.增强for循环遍历

🍔是for循环的一种

🍔格式

🍔好处

🍔弊端

4.forEach(Consumer action)遍历集合

🍔格式

🍔Lmabda表达式的省略原则

(5)forEachRemaining(Consumer action)遍历集合

🍔格式


1.通过for循环配合List接口中的size()和get(index i)的方法

代码如下👇🏻

public static void main(String[] args) {
  // TODO Auto-generated method stub
   List list = new ArrayList();
   list.add("hello");
   list.add("world");
   list.add("java");
   list.add("world");
  for (int i = 0; i < list.size(); i++) {
		String s = (String) list.get(i);
		System.out.println(s);
	}
}

运行截图👇🏻

【Java】List集合遍历的五种方法

2.使用Iterator迭代器及其方法遍历集合

🍔迭代器

🍔是集合的获取元素的方式。

🍔是依赖于集合而存在的。

🍔相关方法:

Object next():获取元素,并移动到下一个位置。

boolean hasNext():如果仍有元素可以迭代,则返回 true。

void remove():从迭代器指向的Collection中移除迭代器返回的最后一个元素(可选操作)

🍔具体操作

a:通过集合对象获取迭代器对象

b:通过迭代器对象的hasNext()方法判断有没有元素

c:通过迭代器对象的next()方法获取元素并移动到下一个元素位置

代码如下👇🏻

public static void main(String[] args) {
 // TODO Auto-generated method stub
	List list =new ArrayList();
	list.add("hello");
	list.add("world");
	list.add("java");
	list.add("world");
   Iterator iterator=list.iterator();
	while(iterator.hasNext()) {
		String str=(String)iterator.next();
		System.out.println(str);
		}
	}

运行截图👇🏻

【Java】List集合遍历的五种方法

3.增强for循环遍历

🍔格式

for(元素的数据类型 变量名 : 数组或者Collection集合的对象) {

 使用该变量即可,该变量其实就是数组或者集合中的元素。

}

🍔好处

简化了数组和集合的遍历

🍔弊端

增强for循环的目标不能为null。建议在使用前,先判断是否为null。

代码如下👇🏻

public static void main(String[] args) {
	// TODO Auto-generated method stub
   List list =new ArrayList();
   list.add("hello");
   list.add("world");
   list.add("java");
   list.add("world");
 for(Object o:list) {
	String str=(String) o;
	System.out.println(str);
  }
}

运行截图👇🏻

【Java】List集合遍历的五种方法

4.forEach(Consumer action)遍历集合

根据Lambda的特性,该方法所需要的参数是一个函数式接口

🍔格式

list.forEach((Object o)->{System.out.println(“迭代集合元素:”+o);});

🍔Lmabda表达式的省略原则

(1)如果方法中只有一个参数,那么数据类型和小括号都可以省略

(2)如果方法中有多个参数,那么数据类型可以省略

(3)如果大括号中只有一行代码,那么大括号、return、分号都可以省略(三者必须一起省略)

代码如下👇🏻

public static void main(String[] args) {
	// TODO Auto-generated method stub
   List list =new ArrayList();
   list.add("hello");
   list.add("world");
   list.add("java");
   list.add("world");
    //Lmabda表达式正常格式
  list.forEach((Object a)->{
	System.out.println(a);
    });
  System.out.println("----------");
	//Lmabda表达式省略格式
  list.forEach(o->System.out.println(o));
}

运行截图👇🏻

【Java】List集合遍历的五种方法

5.forEachRemaining(Consumer action)遍历集合

该方法同样需要一个函数式接口

🍔格式

iterator iterator=list.iterator();

iterator.forEachRemaining(obj->System.out.println(“迭代集合元素”+obj));

代码如下👇🏻

public static void main(String[] args) {
	// TODO Auto-generated method stub
   List list =new ArrayList();
   list.add("hello");
   list.add("world");
   list.add("java");
   list.add("world");
    //将集合转换成Iterator迭代器对象
  Iterator iterator=list.iterator();
    //使用forEachRemaining(Consumer action)来遍历迭代器对象
  iterator.forEachRemaining(o->System.out.println(o));
}

运行截图👇🏻

【Java】List集合遍历的五种方法


🌺如果大家有不明白的地方,或者文章部分内容有问题,欢迎大家在评论区讨论,指正🌺

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/92c410baa6.html