博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
迭代器Iterator
阅读量:5265 次
发布时间:2019-06-14

本文共 1125 字,大约阅读时间需要 3 分钟。

public class Demo1{  public static void main(String[] args){    Collection collection = new ArrayList<>();    collection.add("java");    collection.add("hello");        testIterator(collection);      }  public static void testIterator(Collection collection){  //Iterator
iterator() //获取集合中的对象 /* * Iterator:叫迭代器 * hasnext():判断当前位置是否有值,有返回true,没有false * next():取出当前位置的值,并将指针指向下一个位置 */  Iterator iterator = collection.Iterator();    while(iterator.hasNext()){      String value = (String)iterator.next();      System.out.println(value);    } //注意点: //1.直接再次使用第一次的iterator进行遍历,遍历失败.因为当前指针已经指向了集合的最后. //再次使用hasnext会直接返回false.所以如果想再次遍历,要重新获取迭代器对象. while (iterator.hasNext()) { String value = (String) iterator.next(); System.out.println("iterator1:"+value); } //2.注意:集合可以存储引用数据类型.可以存储不同的数据类型  collection.add(2); //3.再次遍历--当集合中同时存在不同类型的数据时,需要进行容错处理和向下转型.  Iterator iterator2 = collection.Iterator();    while(iterator2.hasNext){      Object obj = iterator.next();      if(obj instanceOf String){        System.out.println(obj);      }}}}

 

转载于:https://www.cnblogs.com/yumengfei/p/10977021.html

你可能感兴趣的文章
针对sl的ICSharpCode.SharpZipLib,只保留zip,gzip的流压缩、解压缩功能
查看>>
【SVM】libsvm-python
查看>>
Jmeter接口压力测试,Java.net.BindException: Address already in use: connect
查看>>
Leetcode Balanced Binary Tree
查看>>
go:channel(未完)
查看>>
[JS]递归对象或数组
查看>>
LeetCode(17) - Letter Combinations of a Phone Number
查看>>
路由器外接硬盘做nas可行吗?
查看>>
python:从迭代器,到生成器,再到协程的示例代码
查看>>
Java多线程系列——原子类的实现(CAS算法)
查看>>
多线程《三》进程与线程的区别
查看>>
linux sed命令
查看>>
html标签的嵌套规则
查看>>
[Source] Machine Learning Gathering/Surveys
查看>>
HTML <select> 标签
查看>>
类加载机制
查看>>
tju 1782. The jackpot
查看>>
湖南多校对抗赛(2015.03.28) H SG Value
查看>>
hdu1255扫描线计算覆盖两次面积
查看>>
hdu1565 用搜索代替枚举找可能状态或者轮廓线解(较优),参考poj2411
查看>>