前言
以下是本在学习javaSE阶段的笔记和草稿,如有不足之处,望君指出我及时订正。
这就是我的态度
接口:是代表集合的抽象数据类型。接口允许集合独立操纵其代表的细节。在面向对象的语言,接口通常形成一个层次。
Map接口:与Object-c中NSDictionary(字典)相似,存储数据都是以键和值的方式,特点是:键不允许重复,值是允许重复的。
Map 具体的类有以下几种:
<pre>
--->HashMap: 是一个散列表,它存储的内容是键值对(key-value)映射。
该类实现了Map接口,根据键的HashCode值存储数据,具有很快的访问速度,
最多允许一条记录的键为null
,不支持线程同步。
--->TreeMap:继承了AbstractMap,并且使用一颗树。()
--->HashTable:不允许 null 值(key 和 value 都不可以),HashMap允许 null 值(key和value都可以)。
HashTable的方法是同步的,所有 public 方法声明中都有 synchronized 关键字(除构造函数)。
</pre>
Map中的常用方法:
<pre>
添加 :
put(K key, V value)
putAll(Map<? extends K,? extends V> m)
删除:
clear()
remove(Object key)
获取:
get(Object key)
size()
判断:
isEmpty()
containsKey(Object key)
containsValue(Object value)
</pre>
Map集合的使用注意点:
<pre>
1.键可以使任意对象,值也可以是任意对象。
2.Map集合中是可以嵌套存List(Map)集合的。
</pre>
网友评论