黑马程序员技术交流社区

标题: Map集合转set问题 [打印本页]

作者: 段光宇    时间: 2013-11-29 22:03
标题: Map集合转set问题
本帖最后由 段光宇 于 2013-11-29 22:44 编辑

map集合存有key和vlaue,对其进行迭代先要将其转为set集合,但从书上查map集合的函数只有keyset,也就是将map的key转为set进行迭代,现在我想把map中的key和vlaue一起转为set该怎么变呢?
作者: HAnG    时间: 2013-11-29 22:10
本帖最后由 HAnG 于 2013-11-29 22:26 编辑

用entrySet()
用法如下:
  1. //打印HashMap键值对,hm是HashMap的一个实例
  2. for(Map.Entry<K, V> me : hm.entrySet()) {
  3.        System.out.println(me.getKey()+"="+me.getValue());
  4. }
复制代码


作者: 段光宇    时间: 2013-11-29 22:13
HAnG 发表于 2013-11-29 22:10
用entrySet()

用entryset()函数?这个函数具体实现什么功能?我试了一下可以
那是这样吗?
  1. Set<Entry<Character, Integer>>  set = map.entrySet();
  2. while(it.hasNext()){
  3.                         Entry<Character, Integer> entry = it.next();                       
  4.                         System.out.print(entry.getKey()+"("+entry.getValue()+")");
复制代码

作者: HAnG    时间: 2013-11-29 22:23
段光宇 发表于 2013-11-29 22:13
用entryset()函数?这个函数具体实现什么功能?我试了一下可以
那是这样吗?
...

我编辑了原回复,你看看。
还有你代码中写 Entry<Character, Integer> 要import java.util.Map; ,但我不知道这样是否恰当,我是直接写Map.Entry<>。
再有可以用增强for循环代替iterator迭代器。
作者: 段光宇    时间: 2013-11-29 22:40
HAnG 发表于 2013-11-29 22:23
我编辑了原回复,你看看。
还有你代码中写 Entry 要import java.util.Map; ,但我不知道这样是否恰当,我 ...

好的我试试
作者: 段光宇    时间: 2013-11-29 22:43
HAnG 发表于 2013-11-29 22:23
我编辑了原回复,你看看。
还有你代码中写 Entry 要import java.util.Map; ,但我不知道这样是否恰当,我 ...

可以了谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2