关于Map 接口的一些知识点

  • Map:

        1. map是键值对关系,它将键映射到值,一个映射不能包含重复的键,每个键最多只能映射到一个值,

              意思是,键不能重复,值可以重复,键与之一一对应。

      2.映射顺序 定义为迭代器在映射的 collection 视图上返回其元素的顺序。

            某些映射实现可明确保证其顺序,如 TreeMap 类;

            另一些映射实现则不保证顺序,如HashMap 类。

     3.map接口里的一些方法:     

  1.  int size();//得到map长度。
  2.   boolean isEmpty();//方法判断map是否为空。
  3.  boolean containsKey(Object key);//方法是判断该key在map中是否有key存在。
  4. boolean containsValue(Object value);//方法是判断该key在map中是否有value存在。
  5.  V get(Object key);//根据键位得到值位。
  6.  V put(K key, V value);//放值。
  7.  V remove(Object key);//根据键位删除值。
  8. void putAll(Map<? extends K, ? extends V> m);//方法用于将指定映射中的所有映射复制到此映射。这些映射将替换此映射对当前位于此映射中的任何键的任何映射。
  9.   void clear();//清除map里面的键位值位。
  10. Set<K> keySet();//获取集合中所有的键值集合。
  11.  Collection<V> values();//获取集合中所有值的集合。
  12. Set<Map.Entry<K, V>> entrySet();//entrySet是 java中 键-值 对的集合,Set里面的类型是Map.Entry,一般可以通过map.entrySet()得到。entrySet实现了Set接口,里面存放的是键值对。一个K对应一个V。

还有许多方法,等等。。。。

下面我们来看看一些代码帮助理解,

//定义map 集合
Map<Object, Object> map = new HashMap<>();
//放值
		map.put("1", "aa");
		map.put("2", "bb");
		map.put("4", "dd");
		map.put("3", "cc");
		map.put("5", "ee");
		

往map里面放值了,接下来就取值,有三种方式,第一种

// 方式1:得到所有的键
		Set<Object> keySet = map.keySet();
		for (Object object : keySet) {
			System.out.println(object);
		}

在控制台输出的是:12345.第二种:

// 方式2:得到所有的值
		Collection<Object> values = map.values();
		for (Object object : values) {
			System.out.println(object);
		}

在控制台输出的是:aa bb cc dd ee.第三种方式

// 方式3:得到所有的键和值
		Set<Entry<Object, Object>> entrySet = map.entrySet();
		for (Entry<Object, Object> entry : entrySet) {
			System.out.println("键:" + entry.getKey() + "  值:" + entry.getValue());
		}

在控制台输出的是:

键:1  值:aa
键:2  值:bb
键:3  值:cc
键:4  值:dd
键:5  值:ee

第三种方式呢,它既能输出键位,又能输出值位,能遍历海量数据。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值