迭代器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了迭代器相关的知识,希望对你有一定的参考价值。
* 迭代器 Iterator 常用的api方法
* boolean hasNext?() 如果迭代具有更多元素,则返回 true 。
* E next?() 返回迭代中的下一个元素。
* void remove?() 从底层集合中删除此迭代器返回的最后一个元素(可选操作)。
* 想要遍历容器获取容器中的每一个元素,而容器中没有索引,java提供了迭代器操作
* 来访问容器中的每一个元素
* 迭代:
* 在去元素之前先要判断集合中是否有该元素,如果有就把这个元素取出来,继续判断
* 如果还有就再次取出来,一直把集合中的所有元素全部取出来,这种取出方式专业术
* 语有称为”迭代“
练习:
public static void main(String[] args) {
//模拟场景
Collection<String> coll = new ArrayList<>();
coll.add("小明");
coll.add("小蓝");
coll.add("小兰");
coll.add("小红");
coll.add("小黑");
coll.add("小思");
coll.add("小非");
//对于Collection集合容器没有索引只能通过迭代器来访问
Iterator<String> inerator = coll.iterator();
// //取第一个元素
// String str1 = inerator.next();
// System.out.println("str1 = " + str1);
// //去第二个元素
// String str2 = inerator.next();
// System.out.println("str2 = " + str2);
// //删除该元素
// inerator.remove();
// String str3 = inerator.next();
// System.out.println("str3 = " + str3);
// //删除该元素
// inerator.remove();
// //查看
// System.out.println(coll.toString());
//可以使用循环来迭代取出容器中的元素
//hasNext() ---》 判读是否有下一个元素
while (inerator.hasNext()){//循环条件
String next = inerator.next();
System.out.print(next+" ");
}
System.out.println();
/* 增强for循环 原理就是迭代原理
JDK 1.5 新特性 高级for循环
格式:
for (元素数据类型 变量 : Collection集合或者数组) {
//操作 代码
}
备注:在迭代的过程中,不要对集合进行删除路和添加的操作
*/
for (String s : coll) {
System.out.print(s+",");
}
}
以上是关于迭代器的主要内容,如果未能解决你的问题,请参考以下文章