本帖最后由 看丶小胖 于 2015-3-19 12:07 编辑
- import java.util.*;
- public class MapEntryDemo {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- Map<String,Integer> m=new HashMap<String,Integer>();//这里千万不能用Map,因为他没有定义存储方式
- m.put("ss", 6);
- m.put("ksll", 9);
- m.put("ksole", 3);
- Set<String> set=m.keySet();//使用KeySet()方法获取HashMap中的键。
- Iterator<String> it=set.iterator();//使用迭代器便于一一取出Set集合中的键的值。
- while(it.hasNext())
- {
- /*int value=m.get(it.next());
- System.out.println("键:"+it.next()+"—— 值:"+value);
- */
- [color=Red]/*这里如果我按照上面注释的代码敲,编译时通过的,但是运行时会出错。抛出java.util.NoSuchElementException也就是说我没有可以迭代的元素。而且得到的输出结果也很奇葩
- 键:ksole—— 值:6.但是我按照如下代码就可以。可我已经给Iterator加上了泛型,为什么使用it.next()就不行,难道他返回的就不是String?[/color]
- */
- String s=it.next();
- int value=m.get(s);
- System.out.println("键:"+s+" 值:"+value);
- }
- }
- }
复制代码 |
|