HashMap 储存结构 : key --> value
key : 键值、唯一的
唯一的key 重复的话 覆盖原来的
value: 值
由于HashMap的特殊储存结构,所以不能直接用 迭代器(Iterator) 遍历
第一种 利用 HaspMap.values( ); 取出 其 value 的值 但不能取出key的值
其的到Collection 集合
如
//1.声明一个非泛型HashMap集合 HashMap hm = new HashMap(); //2.利用for循环 对hm 集合 给值 for(int i=0; i < 10; i++){ hm.put(i,i+"+hm"); } //3.利用value() 返回 value Collection ct = hm.values(); //4.利用增强for循环 对其遍历 for(Object obj : ct){ System.out.print(obj+"\t"); }
第二种 利用其HashMap.keySet( ); 取出key键 再HashMap.get( Key ); 取出value的值
.keySet( ) 返回一个Set集合
如
//1.声明一个非泛型HashMap集合 HashMap hm = new HashMap(); //2.利用for循环 对hm 集合 给值 for(int i=0; i < 10; i++){ hm.put(i,i+"+hm"); } //利用entrySet( ); Set st = hm.entrySet( ); //利用增强for 遍历Set集合 for(Object obj : st){ //不用 instanceof //用entrySet() 获取的一定是 entrySet //直接 向下转型 Entry entry = (Entry)obj; //利用Entry自带的getKey( ) 和 getValues()取出对应值 System.out.println("| Key --> "+entry.getKey()+"|--------|"+"value -->"+entry.getValue()+"|"); }第三种 利用entrySet( ); 遍历 其返回的是一个Set集合
如
//3.利用keySet( ) 返回Set集合 Set ks = hm.keySet(); //由于Set是无序 没有下标 //选着用迭代器 Iterator Iterator it = ks.iterator( ); //用while循环输出结果 while(it.hasNext()){ //it.next() 为Object //向下转型 if(a instanceof A) //int key = (int) it.next(); //System.out.println("Key -->"+key+"\t"+"value -->"+hm.get(key)); //直接转换 Object 类型 Object obj = it.next( ); System.out.println("| Key --> "+key+"|--------|"+"value --> "+hm.get(key)+"|"); }
以上都是自己在学Java时的笔记
发个博客 纪念点滴
如有雷同,不如加个联系呗
白诗秀儿 2017-09-19
泡泡 2016-06-25
吟风 2016-05-23
白诗秀儿 2017-02-22
白诗秀儿 2016-09-12
寒江独钓 2016-05-23
白诗秀儿 2016-11-08
吟风 2016-04-06
shift2you 2018-06-01
寒江独钓 2017-02-21
95崔国权(mobei) 2025-04-02
95崔国权(mobei) 2025-04-02
95崔国权(mobei) 2025-04-02
藏家519 2025-04-03
马踏飞燕 2025-04-03
1 2025-04-03
彭于晏东北分晏 2025-04-02
藏家574 2025-04-02
一耶暴富 2025-04-02
藏家197 2025-04-02