Java中Map的取值方式有哪些

寻技术 JAVA编程 2023年07月17日 108

本篇内容主要讲解“Java中Map的取值方式有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java中Map的取值方式有哪些”吧!

    Java关于Map的四种取值方式

    map的主要作用是什么?

    可以通过创建一个map的实现类 来存放 数据 值 和值的描述 也可以通过描述去取得数据

    将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。

    此接口取代 Dictionary 类,后者完全是一个抽象类,而不是一个接口。

    Map 接口提供三种collection 视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的内容。映射顺序 定义为迭代器在映射的 collection 视图上返回其元素的顺序。某些映射实现可明确保证其顺序,如 TreeMap 类;另一些映射实现则不保证顺序,如HashMap 类。

    Map的取值方式主要有4种:

    1.keySet二次取值;

    2.entrySet使用iterator遍历key和value

    3.entrySet遍历key和value

    4.通过Map.values()遍历所有的value,但不能遍历key

    public static void main(String[] args) {
     
            Map<String, String> map = new HashMap<String, String>();
            map.put("1", "value1");
            map.put("2", "value2");
            map.put("3", "value3");
     
            // 第一种方法:普遍使用,二次取值
            System.out.println("通过Map.keySet遍历key和value:");
            for (String key : map.keySet()) {
                System.out.println("key= " + key + " and value= " + map.get(key));
            }
     
            // 第二种方法:
            System.out.println("通过Map.entrySet使用iterator遍历key和value:");
            Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
            while (it.hasNext()) {
                Map.Entry<String, String> entry = it.next();
                System.out.println("key= " + entry.getKey() + " and value= "
                        + entry.getValue());
            }
     
            // 第三种方法:推荐,尤其是容量大时
            System.out.println("通过Map.entrySet遍历key和value");
            for (Map.Entry<String, String> entry : map.entrySet()) {
                System.out.println("key= " + entry.getKey() + " and value= "
                        + entry.getValue());
            }
     
            // 第四种方法:
            System.out.println("通过Map.values()遍历所有的value,但不能遍历key");
            for (String v : map.values()) {
                System.out.println("value= " + v);
            }
        }

    Java中Map取值转String Null值处理

    Map<String, Object> 直接取值转String

    String value = (String)map.get("key")

    当map.get(“key”)为Null值时会报错。

    使用String类的valueOf静态方法可以解决这个问题

    String value = String.valueOf(map.get("key"))
    关闭

    用微信“扫一扫”