Java中HashMap的一些常用方法举例

本人之前已经写过了ArrayList和HashSet的常用方法,大家可以去对比着看一下;其实有很多方法都是差不多的,可以对比着学习哦····加油?
ArrayList用法???HashSet用法

方法概览:

  1. put(Object key,Object value)和putAll(Collection c)添加映射
  2. get(Object key)根据键来获取对应的值
  3. containsKey(Object key)和containsValue(Object value)
  4. remove(Object key)
  5. values()
  6. isEmpty()
  7. entrySet()
  8. keySet()

Map与其他两个集合的区别就是,在Map中数据是以键-值对的形式存储的。一个键值对交一个映射;访问元素的时候只能通过键来访问指定的元素

全局Map

HashMap<String,String> hm1 = new HashMap<String,String>();
HashMap<String,String> hm2 = new HashMap<String,String>();

  • put(Object key,Object value)在此映射中关联指定的Key-value
  • putAll(Collection c)在此映射中将指定的映射关系添加到被操作的映射中
String [] key = {"name","age","tender"};
		String [] value = {"zhangsan","16","men"};
		hm2.put("id","012");
		hm2.put("describe", "zhangdelaohaokanle");
		for(int i = 0;i<3;i++){
			hm1.put(key[i], value[i]);
		}
		hm1.putAll(hm2);

  • get(Object key)根据key获取指定的value
System.out.println(hm1.get("name"));

  • containsKey(Object key)检测该映射中是否存在指定key的映射,有则返回true;没有则返回false
  • containsValue(Object value)检测该映射中是否存在指定value的映射,有则返回true;没有则返回false
System.out.println(hm1.containsKey("id")+"    "+hm1.containsValue("013"));

  • remove(Object key)根据key的值删除指定的映射关系
System.out.println(hm1.remove("describe"));

  • values()返回值的集合,
		Collection<String> li = hm1.values();
		for (String string : li) {
			System.out.print(string+"     ");
		}

  • isEmpty()测试映射是否为空
System.out.println("\n"+hm1.isEmpty());



重要的事情要用三条杠来分割??????

- ??????遍历map得到key和value的两种方法??????

  1. entrySet()将此映射所包含的映射关系返回到Set中,通过Iterator迭代器迭代输出,或者用foreach输出
  • 这里我们推荐forearch,为什么呢?哈哈,观察仔细的同学都看出来了,因为foreach代码量少?,还有一点就是foreach效率高,不仅是开发效率,还有运行效率
for (Map.Entry<String, String> me:hm1.entrySet()) {
			System.out.println(me.getKey()+":"+me.getValue());
		}
		/*Set<Entry<String, String>> se = hm1.entrySet();
		Iterator<Entry<String, String>> it = se.iterator();
		while(it.hasNext()){
			Map.Entry me =  it.next();
			System.out.println(me.getKey()+":"+me.getValue());
		}*/



2、keySet()将映射中所包含的键返回到Set中,通过Set的Iterator迭代器迭代输出,或者用foreach输出

  • 这里我们推荐forearch,为什么呢?哈哈,观察仔细的同学都看出来了,因为foreach代码量少?,还有一点就是foreach效率高,不仅是开发效率,还有运行效率,哈哈同上?
for (String key1:hm1.keySet()) {
			System.out.println(key1+":"+hm1.get(key1));
		}
		/*Set<String> set = hm1.keySet();
		Iterator<String> it1 = set.iterator();
		while(it1.hasNext()){
			System.out.println(hm1.get(it1.next()));
		}*/



本博客纯属平时学习笔记没有很多技术含量,小白可以来学习一下。也欢迎各位大佬打扰指教!?

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值