Java中的Map集合详解

一、概述

 java中的map集合使用键(key)值(value)来保存数据,其中值(value)可以重复,但键(key)必须是唯一,也可以为空,但最多只能有一个key为空,它的主要实现类有HashMap、LinkedHashMap、TreeMap。

二、Map集合方法概要


三、HashMap、LinkedHashMap、TreeMap区别及用法

1、HashMap

特点:保存元素时先进后出、无序性;查询效率比较高;key-value可以为null,但最多只能为一个null;不支持线程同步,即可以有多个线程同时写HashMap,可能导致数据不一致,如果需要同步可以使用Collection的synchronizedMap方法使其同步。

示例:

Map<String,String> map=new HashMap<String, String>();
//使用put添加元素
map.put("name","张三");
map.put("sex","男");
map.put("age","12");
map.put("addres","深圳");
map.put("iPhone","13068706819");
//存放两个key-value为空的元素,打印时出现一个
map.put(null, null);
map.put(null, null);

//打印出来元素是先进后出排序
System.out.println("HashMap存放元素规则是先进后出:"+map);

 
效果: 

2、LinkedHashMap

特点:LinkedHashMap内部是双向链表结构,保存了元素插入的顺序,Iterator遍历元素时按照插入的顺序排列,支持线程同步。

代码:

//实例化LinkedHashMap对象,保存数据类型为String
Map<String,String> map1=new LinkedHashMap<String,String>();
//使用put添加元素
map1.put("name","张三");
map1.put("sex","男");
map1.put("age","12");
map1.put("addres","深圳");
map1.put("iPhone","13068706819");
map1.put(null, null);
打印元素排列方式:

System.out.println("元素按照插入的顺序排列:"+map1);
{name=张三, sex=男, age=12, addres=深圳, iPhone=13068706819, null=null}

3、TreeMap

特点:保存元素key-value不能为null,允许key-value重复;遍历元素时随机排列。

代码:

Map<String, String> map2 = new TreeMap<String, String>();
map2.put("name", "张三");
map2.put("sex", "男");
map2.put("age", "12");
map2.put("addres", "深圳");
map2.put("iPhone", "13068706819");
map2.put("iPhone", "13068706819");
打印:

System.out.println("元素随机排列"+map2);
{addres=深圳, age=12, iPhone=13068706819, name=张三, sex=男}











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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值