Day 26 学习分享 - Map 和 匿名内部类

1. Map
1.1 Map概述
Map 是一个双边队列形式储存为底层结构的接口

Map双边队列中对于数据储存类型
	有限制 存储数据类型在创建Map双边队列时进行约束, 保证数据类型一致化
	也没有限制 Map可以满足任意类型
	
Map使用了两个泛型!
	Map<K, V>
1.2 Map整体结构和常用API
interface Map<K, V>
--| class HashMap<K, V>
	底层储存数据结构使用的方式是哈希表方式, 储存数据是根据当前存储Key作为计算存储问题和查询元素的唯一标识
--| class TreeMap<K, V>
	底层粗存数据结构使用的方式是二叉树结构, 要求储存的键值对Key必须有对应的排序方式, 这里就需要Comparable<T> 或者 Comparator<T>
put(K key, V value);
			添加符合Map要求的键值对存储到双边队列中
		putAll(Map<? extends K, ? extends V> map);
			添加另一个Map到当前Map中, 要求K是当前Map本身对应的K或者其子类, V是当前Map本身对应的V或者其子类
	删
		remove(Object key);
			删除对应Key的键值对
	改
		put(K key, V value);
			使用value修改已存在的key对应的值
	查
		int size();
			Map双边队列个数
		boolean isEmpty();
			判断当前Map双边队列中是否为空
		boolean containsKey(Object key);
			判断指定key是否存在
		boolean containsValue(Object value);
			判断指定value是否存在
		Set<K> keySet();
			返回Map双边队列中所有Key对应的Set集合
		Collection<V> values();
			返回Map双边队列中所有value对应Collection集合
1.3 HashMap代码演示
package com.qfedu.a_map;

import java.util.Collection;
import java.util.HashMap;
import java.util.Set;

/*
 * Map方法演示
 */
public class Demo1 {
   
	public static void main(String[] args) {
   
		/*
		 * Map是一个接口, 没有自己的类对象, 这里使用Map接口的实现类HashMap做方法演示
		 */
		HashMap<String, Integer> map1 = new HashMap<String, Integer>();
		
		map1.put("Dior 999", 280);
		map1.put("YSL", 220);
		map1.put("Mac", 180);
		map1.put("阿玛尼 405", 230);
		System.out.println(map1);
		HashMap<String, Integer> map2 = new HashMap<String, Integer>();
		
		map2.put("TF", 179);
		map2.put("雅诗兰黛", 229);
		
		map1.putAll(map2);
		System.out.println(map1);
		
		map1.remove("Mac");
		System.out.println(map1);
		
		map1.put("阿玛尼 405", 280
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值