菜鸟笔记
提升您的技术认知

Java中Map详解

用法

Map:java.util 中的集合类包含 Java 中某些最常用的类。最常用的集合类是 List 和 Map。

Map 提供了一个更通用的元素存储方法。Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。

本文主要介绍java map的初始化、用法、map的两种常用的遍历方式。

map存放值的时候通过put存放,如果key值相等的话会把之前存放的值覆盖。

查找、删除、修改通过key值进行操作。

下面是HashMap存放值的操作。

HashMap<Integer,Double> hashMap = new HashMap<>();
        hashMap.put(1850312401,99.5);
        hashMap.put(1850312402,99.6);
        hashMap.put(1850312403,99.7);
        hashMap.put(1850312404,99.8);
        System.out.println(hashMap);

由于Hashmap中实现了toString方法,所以可以直接对HashMap进行输出。

遍历

HashMap遍历有两种方法。

一种是通过keySet()获取所有的set值进行遍历操作:

Set<Integer> doubleSet = hashMap.keySet();
        for (Integer aDouble : doubleSet) {
            Double value = hashMap.get(aDouble);
            System.out.println(aDouble + "=" + value);
        }

        /*Iterator<Integer> iterator = doubleSet.iterator();
        while (iterator.hasNext()){
            Integer aDouble = iterator.next();
            Double value = hashMap.get(aDouble);
            System.out.println(aDouble+"==="+value);
        }*/

先写的使用的是foreach进行循环遍历,注释的是使用迭代器进行的遍历。

另一种是通过HashMap 的enttySet()方法,获取的返回值为Set<Entry<Key,Value>>,然后通过遍历获取到HashMap 钟的所有值。

Set<Map.Entry<Integer,Double>> entries = hashMap.entrySet();
        for (Map.Entry<Integer,Double> entry : entries){
            Integer key = entry.getKey();
            Double value = entry.getValue();
            System.out.println(key+"==="+value);
        }

嗯,先这样。