第十章--Java数据结构 第五节--映射Map

映射(1)

----Map映射

数学定义:两个集合之间的元素对应关系

一个输入对应到一个输出

{ 1,张三},{2,李四},{Key,Value},键值对,K-V对

----Java中的Map

(1)Hashtable:同步,性能比较慢,适合处理数据量小

(2)HashMap:不支持同步,快,数据量大

(3)Properties:同步,文件形式存储的,数据量小

映射(2):Hashtable

---- K-V对,K和V都不允许为null

----同步,多线程安全

----无序的

----适合小数据量

----主要方法:clear,contains / containsValue,containsKey,get,put,remove,size

举个例子:

遍历方式:有三种

第一种遍历方式:根据Entry迭代器遍历

第二种遍历方式:根据Key的Iterator遍历

第三种遍历方式:根据Key的Enumeration遍历

映射(3):HashMap

---- K - V对,K和V都允许为null

----不同步,多线程不安全

Map  m  =  Collection.synchronizedMap ( new  HashMap ( ... ) )

----无序的

----主要方法:clear  containsValue  containsKey  get  put  remove  size

----HashMap的遍历方式只有两种:(没有根据Key的Enumeration遍历)

第一种遍历方式:根据Entry迭代器遍历

第二种遍历方式:根据Key的Iterator遍历

映射(4):

LinkedHashMap:基于双向链表的维持插入顺序的HashMap,支持null的插入(key和value都可以)

TreeMap:基于红黑树的Map,可以根据key的自然排序或者compareTo方法进行排序输出,value可以是null,但是key不可以,会出现编译没错,运行时报空指针异常

映射(5):Properties

----继承于Hashtable

----可以将K - V对保存在文件中

----适用于数据量少的配置文件,比如windows里面的ini文件

----继承自Hashtable的方法:clear  contains / containsValue  containsKey  get  put  remove  size,除此之外多了四个方法。(1)从文件加载的load方法 (2)写入到文件中的store方法  (3)获取属性getProperty方法  (4)设置属性setProperty方法

----就是说可以把Key - Value对保存到Properties(文件)里面,也可以从Properties(文件)里面取出所有的Key - Value对

映射(6):

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值