Java Map 接口

Map 接口

Map 接口的定义

Map 接口是与 Collection 完全独立的另外一个体系,它们之间还有一个区别就是 Set、List、Collection 只能操作单个元素,而 Map 可以操作一对元素,因为 Map 中的元素都是以 key-value 的键值映射形式存储的。Map 接口定义时使用了泛型,并且定义了两个泛型 K 和 V,K 表示 key,规定了键元素的数据类型,V 表示 value,规定了值元素的数据类型,Map 接口中的方法如表:

方法 描述
boolean size() 获取集合长度
boolean isEmpty() 判断集合是否为空
boolean containsKey(Object key) 判断集合中是否存在某个 key 值
boolean containsValue(Object value) 判断集合中是否存在某个 value 值
V get(Object key) 取出集合中 key 对应的 value 值
V put(K key, V value) 向集合中存入一组 key-value 的元素
V remove(Object key) 删除集合中 key 对应的 value 值
void putAll(Map<? extends K,? extends V> m) 向集合中添加另外一个 Map 集合
void clear() 清除集合中的所有元素
Set keySet() 取出集合中所有的 key,返回一个 set 集合
Collection values() 取出集合中所有的 value,返回一个 Collection 集合
Set<Map.Entry<K,V>> entrySet() 将 Map 对象转换为 Set 对象
int hashCode() 获取集合的散列值
boolean equals(Object o) 比较两个集合是否相等

Map 接口的实现类

Map 是一个接口,在实际开发中需要使用 Map 必须通过其实现类来完成实例化操作,Map 接口常用的实现类如下:

  • HashMap:存储一组无序,key 不可重复,但 value 可重复的元素。
  • Hashtable:存储一组无序,key 不可重复,但 value 可重复的元素。
  • TreeMap:存储一组有序,key 不可重复,但 value 可重复的元素,可以按照 key 来排序。

HashMap

HashMap 是 Map 接口的一个常用实现类,操作也非常简单,让我们一起实践:

public class TestHashMap {
   
	public static void main(String[] args) {
   
		HashMap<String,String> hashMap = new HashMap<String,String>();
		hashMap.put("h", "Hello");
		hashMap.put("w","World");
		hashMap.put("j","Java");
		hashMap.put("s","JavaSE");
		hashMap.put("m","JavaME");
		hashMap.put("e","JavaEE");
		System.out.println(hashMap);
		hashMap.remove("e");
		System.out.println("删除之后:"+hashMap);
		hashMap.put("m","Model");
		System.out.println("添加之后:"+hashMap);
		if(hashMap.containsKey("a")) {
   
			System.out.println("集合中存在值为  a 的 key"); 
		}else {
   
			System.out.println("集合中不存在值为 a 的 key");
		}
		if(hashMap.containsValue("Java")) {
   
			System.out.println("集合中存在值为 Java 的 Value");
		}else {
   
			System.out.println("集合中不存在值为 Java 的 Value");
		}
		Set keys = hashMap.keySet();
		Iterator keyIterator = keys.iterator();
		System.out.println("集合中的 key:");
		while(keyIterator.hasNext()) {
   
			System.out.print(keyIterator.next()+", ");
		}
		
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值