当前位置: 首页 > 工具软件 > Map picasso > 使用案例 >

Map...

茹建茗
2023-12-01

Map接口使用

package MONA.demo01;

import java.util.HashMap;
import java.util.Map;

public class Demo01 {
    public static void main(String[] args) {
        //K:键
        //V:值
        //Map<K,V>
        Map<String,String> map = new HashMap<>() ;
        //增加:put(一般集合为add)
        //V put(K key,V value);存入值,返回之前的值,如果之前没有存在映射,那么返回null
        System.out.println(map.put("111","aaa"));
        System.out.println(map.put("111","bbb"));//返回aaa

        //V get(Object key) 根据键获取值
        String value = map.get("111");
        System.out.println("获取到的值:"+value);

        //key不存在返回null
        System.out.println(map.get("222"));

        //删除指定key的值
        //V remove(Object key);
        System.out.println("删除指定的key:"+map.remove("111"));
        System.out.println("map = "+map);
    }
}

Map集合遍历

代码1:

package MONA.demo01;

import java.util.HashMap;
import java.util.Map;
import java.util.Set;

/**
 * Map 的 key 是唯一的
 */
public class Demo02 {
    public static void main(String[] args) {
        Map<String,String> map = new HashMap<>();
        map.put("111","aaa");
        map.put("222","bbb");
        map.put("333","ccc");
        map.put("444","ddd");

        //遍历map:
        //键找值:即通过元素中的键,获取键所对应的值
        //1.先获取所有的键
        Set<String> keySet = map.keySet();
        //System.out.println("keySet = " + keySet);

        //2.遍历键的集合
        //增强for
        for(String k : keySet){
            //System.out.println("k="+k);
            //根据键取值
            String value = map.get(k);
            System.out.println("获取到的k:" + k + "获取到的值V:"+value);
        }
        //迭代器

        //System.out.println(map);
    }
}
遍历map:键找值:即通过元素中的键,获取键所对应的值
 缺点:
    比较麻烦
 改进:
    一次获取所有的键值对

Entry键值对对象

在Map类设计时,提供了一个嵌套接口:Entry。

Entry将键值对的对应关系封装成了对象。即键值对对象,这样我们在遍历Map集合时,就可以从每一个键值对(Entry)对象中获取对应的键与对应的值。

代码2:

package MONA.demo01;

import java.util.HashMap;
import java.util.Map;
import java.util.Set;

public class Demo03 {
    public static void main(String[] args) {
        Map<String,String> map = new HashMap<>();
        map.put("111","aaa");
        map.put("222","bbb");
        map.put("333","ccc");
        map.put("444","ddd");
        //遍历:使用键值对对象

        //Map.Entry<K,V>:封装了键值对的数据
        //getKey() 获取键
        //getValue() 获取值

        //1.获取所有的键值对
        //快捷键:打出map.entrySet(),然后Ctrl+Alt+V
        Set<Map.Entry<String,String>> entrySet =  map.entrySet();

        //2.遍历Set集合,获取所有键值对对象
        for (Map.Entry<String, String> entry : entrySet) {
            String key = entry.getKey();
            String value = entry.getValue();
            System.out.println("k="+key+"   value"+value);
        }
    }
}

 类似资料: