黑马程序员技术交流社区
标题:
增强FOR循环问题
[打印本页]
作者:
宋文轩
时间:
2011-11-11 21:17
标题:
增强FOR循环问题
用增强for循环如何遍历的map集合? 感觉不是很理解for( :)这个冒号前面要怎么写。数组倒明白 map结合就晕了
作者:
刘福双
时间:
2011-11-11 21:23
先取出map中所有ID 这需要一个方法
Set set=linkedhashmap.getkeys()(你的map集合的一个方法)
然后对你建立的set集合 进行遍历
可以用增强for循环:
for(Object o:set){
if(o.equals(RecordID)){
String str = map.getvalue(o);
}
}
就可以了当然str要在外面定义
作者:
张邦庆
时间:
2011-11-11 21:25
这是1.5新特性,要迭代的类必须实现Iterator接口;
可以对比的理解,其实for增强内部也是迭代实现的:Set<String> set = new HashSet<String>();
Iterator<String> it = set.iterator();
while (it.hasNext()) {
String str = it.next();
System.out.println(str);
}
for循环遍历:
for (String str : set) {
System.out.println(str);
}
作者:
张志东
时间:
2011-11-11 21:47
原理是一样的,集合是数组的升级+加强的产物
作者:
陈超
时间:
2011-11-11 22:09
本帖最后由 陈超 于 2011-11-11 22:41 编辑
增强for循环输出map集合两种方式:
一、先得到map集合key的set集合:Set<key类型> set=map实例.keySet();
for(key类型 s:set){}
其中 “:”前写上Map集合中key的类型(与Set集合中的类型相同),
空一格写一个变量(任意,不和其他变量名冲突),变量表示Map中key的一个引用。
二、先得到map集合中key和value的关系的集合:Set<Map.Entry<k,v>> set=Map实例.entrySet();
for(Map.Entry<k,v> me:set){}
:号前面的写法与一相同
作者:
宋文轩
时间:
2011-11-12 12:47
谢谢大家 主要是问MAP集合的写法 谢谢楼上的哥们
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2