遍历HashMap的5种方法

 Map<Integer,Double> mixerRemain=new HashMap<>();
        for(int i=0;i<data.size();i++) {
            JSONObject object = (JSONObject) data.get(i);
            RemainCur newRemain = (RemainCur) JSONObject.toBean(object, Remain.class);
          
            //后搅拌车 余料方量
            if(mixerRemain.containsKey(newRemain.getMixerEid())){
                mixerRemain.put(newRemain.getMixerEid(),mixerRemain.get(newRemain.getMixerEid())+newRemain.getShiftQty().doubleValue());
            }else{
                mixerRemain.put(newRemain.getMixerEid(),newRemain.getShiftQty().doubleValue());
            }
        }

1.使用迭代器遍历HashMap EntrySet


        Iterator<Map.Entry<Integer, Double>> iterator = mixerRemain.entrySet().iterator();
        while (iterator.hasNext()){
            Map.Entry<Integer, Double> entry = iterator.next();
            System.out.println(entry.getKey());
            System.out.println(entry.getValue());
        }

2.使用迭代器遍历HashMap KeySet

 Iterator<Integer> iterator = mixerRemain.keySet().iterator();
        while (iterator.hasNext()){
            Integer key = iterator.next();
            System.out.println(key);
            System.out.println(mixerRemain.get(key));
        }

3.使用For-each循环迭代HashMap

for (Map.Entry<Integer,Double> map:mixerRemain.entrySet()) {
               System.out.println(map.getKey());
                System.out.println(map.getValue());
        }

4.使用lambda表达式遍历HashMap`

 mixerRemain.forEach((key,vlaue) ->{
                System.out.println(key);
                System.out.println(vlaue);
            }
        );

5.使用Stream API 遍历HashMap

  mixerRemain.entrySet().stream().forEach((integerDoubleEntry -> {
                    System.out.println(integerDoubleEntry.getKey());
                    System.out.println(integerDoubleEntry.getValue());
                })
        );

注:使用过程中发现第4和5不支持return返回值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值