Java HashMap 集合 三种常用遍历

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时的笔记

发个博客 纪念点滴

如有雷同,不如加个联系呗

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值