目录
一、List五种遍历方式
方法 | 说明 |
迭代器遍历 | 在遍历的过程中需要删除元素,请使用迭代器。 |
列表迭代器 | 在遍历的过程中需要添加元素,请使用列表迭代器。 |
增强for遍历 | 仅仅想遍历,那么使用增强for或Lambda表达式。 |
Lambda表达式 | 仅仅想遍历,那么使用增强for或Lambda表达式。 |
普通for | 如果遍历的时候想操作索引,可以用普通fo,。 |
1、普通for遍历
public static void main(String[] args) {
List<String> stringList = new ArrayList<>();
stringList.add("1");
stringList.add("2");
stringList.add("3");
stringList.add("4");
stringList.add("5");
//1、普通for循环
for (int i = 0; i < stringList.size(); i++) {
System.out.println(stringList.get(i));
}
}
2、 增强for遍历
public static void main(String[] args) {
List<String> stringList = new ArrayList<>();
stringList.add("1");
stringList.add("2");
stringList.add("3");
stringList.add("4");
stringList.add("5");
//2、增强for循环
for (String s : stringList) {
System.out.println(s);
}
}
3、Lambda表达式
public static void main(String[] args) {
List<String> stringList = new ArrayList<>();
stringList.add("1");
stringList.add("2");
stringList.add("3");
stringList.add("4");
stringList.add("5");
//3、lamda表达式
stringList.forEach(s -> {
System.out.println(s);
});
}
4、迭代器遍历
public static void main(String[] args) {
List<String> stringList = new ArrayList<>();
stringList.add("1");
stringList.add("2");
stringList.add("3");
stringList.add("4");
stringList.add("5");
//4、迭代器遍历
//获取迭代器对象,迭代器就好比是一个箭头,默认指向集合的0索引处
Iterator<String> it = stringList.iterator();
//利用循环不断的去获取集合中的每一个元素
while (it.hasNext()){
//next方法的两件事情:获取元素并移动指针
String str = it.next();
System.out.println(str);
}
}
迭代器遍历注意点:
1,报错NoSuchElementException,没有元素报异常
2,迭代器遍历完毕,指针不会复位
3,循环中只能用一次next方法
4,迭代器遍历时,不能用集合的方法进行增加或者删除
5、列表迭代器
public static void main(String[] args) {
List<String> stringList = new ArrayList<>();
stringList.add("1");
stringList.add("2");
stringList.add("3");
stringList.add("4");
stringList.add("5");
System.out.println("______________");
// 5.列表迭代器
//获取一个列表迭代器的对象,里面的指针默认也是指向8索引的
//额外添加了一个方法:在遍历的过程中,可以添加元素
ListIterator<String> lt = stringList.listIterator();
while (lt.hasNext()){
String str = lt.next();
if ("2".equals(str)){
lt.add("6");
}
}
System.out.println(stringList);
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/93338.html