java 迭代器遍历List、Set和Map
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java 迭代器遍历List、Set和Map,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2085字,纯文字阅读大概需要3分钟。
内容图文
public class test {
public static void main(String[]args)
{
iteratorlist();
iteratorset();
iteratormap();
}
//**遍历List**
*Iterator<String> it* 获得String类型的迭代器对象
*list.iterator()* 返回一个list容器的对象
*Iterator<String> it=list.iterator()* 初始化迭代器,相当于int i=0
*it.hasNext()* 判断是否有下一个元素
*it.next()* 返回当前元素,并将游标移至下一个元素
public static void iteratorlist()
{
List<String> list=new ArrayList<>();
list.add("aa");
list.add("bb");
list.add("cc");
//初始化迭代器对象,相当于int i=0;
for(Iterator<String> it=list.iterator();it.hasNext();) //判断条件,是否有下一个
{
String s=it.next(); //返回当前元素,并且使得游标指向下一个
System.out.println(s);
}
}
**//遍历Set**
public static void iteratorset()
{
Set<String> set= new HashSet<>();
set.add("dd");
set.add("ee");
set.add("ff");
for(Iterator<String> it=set.iterator(); it.hasNext();)
{
String s=it.next();
System.out.println(s);
}
}
**//遍历Map**
* map.entrySet() Map键值对存放在节点里,相当于放回一个键值对的集合*
*Entry<Integer,String> 就相当于返回的一个键值对的集合*
* Set<Entry<Integer,String>> 相当于将每一对集合放进Set大集合里,Set的元素就是键值对的集合*
*Iterator<Entry<Integer,String>> it迭代器遍历Set就相当于遍历里面的每一对集合*
* Entry<Integer,String> s=it.next(); it.next()返回的是一个键值对集合*
* s.getKey() 返回键值*
*s.getValue() 返回键对应的值*
public static void iteratormap()
{
Map<Integer,String> map=new HashMap<>();
map.put(1,"gg");
map.put(2,"hh");
map.put(3, "ii");
**//第一种遍历方式**
Set<Entry<Integer,String>> ss=map.entrySet(); //map键值对是存放在节点里面,通过entrySet()获得键值对
//的集合
for(Iterator<Entry<Integer,String>> it=ss.iterator();it.hasNext();)
{
Entry<Integer,String> s=it.next();
System.out.println(s.getKey()+"+"+s.getValue());
}
** //第二种遍历方式,相当于遍历集合**
Set<Integer> ss=map.keySet(); 相当于建立一个包含所以键的集合
再通过Map自带方法map.get(key)返回键对应的值,达到遍历效果
Set<Integer> ss=map.keySet();
for(Iterator<Integer> it=ss.iterator();it.hasNext();)
{
Integer i=it.next();
System.out.println(i+"+"+map.get(i));
}
}
}
内容总结
以上是互联网集市为您收集整理的java 迭代器遍历List、Set和Map全部内容,希望文章能够帮你解决java 迭代器遍历List、Set和Map所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。