🎊专栏【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);
}
}
运行截图👇🏻
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);
}
}
运行截图👇🏻
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);
}
}
运行截图👇🏻
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));
}
运行截图👇🏻
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));
}
运行截图👇🏻
文章来源:https://www.toymoban.com/news/detail-775514.html
🌺如果大家有不明白的地方,或者文章部分内容有问题,欢迎大家在评论区讨论,指正🌺文章来源地址https://www.toymoban.com/news/detail-775514.html
到了这里,关于【Java】List集合遍历的五种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!