黑马程序员技术交流社区
标题:
【广州校区】+ 【原创】Java 集合介绍
[打印本页]
作者:
码农苏尼玛
时间:
2018-5-24 14:11
标题:
【广州校区】+ 【原创】Java 集合介绍
集合类是JAVA最常用的一个类型.包括List和Map.
List:包括ArrayList和Vector,两者特点是可变大小长度,善于储存和操作任何类型对象的元素.List尤为使用较多
Map ;提供了更加通用的方法 基本特征是储存 "键值对"的形式.每个键(KEY)映射一个值(VALUE)
Map定义了几个插入和删除元素的方法 下面简单的给大家介绍一下
clear()
从 Map 中删除所有映射
remove(Object key)
从 Map 中删除键和关联的值
put(Object key, Object value)
将指定值与指定键相关联
clear()
从 Map 中删除所有映射
putAll(Map t)
将指定 Map 中的所有映射复制到此 map
其中putAll(Map t) 不比put(Object key,Object value) 方法更加有效.可是主要为了方便操作,
实际上,都会忽略性能上的问题而去实现更多繁琐繁杂的事情. putAll()是需要迭代所传递的Map元素以外还需要迭代put()方法.
而且putAll()再添加的过程当中,可以正确调整Map大小.
查看 =/迭代Map
迭代Map的元素 java提供了封装的三种方法.
所有键值对 — 参见 entrySet()
所有键 — 参见 keySet()
所有值 — 参见 values()
1.entrySet() 是迭代map将键值对打印出来
2.keySet()是把map中所有key的值都封装添加到set集合里面
3.values()是把map中所有values的值封装添加到set集合
Map类型种类繁多,用途和优势各有不同
HashMap
Hashtable
Properties
LinkedHashMap
IdentityHashMap
TreeMap
WeakHashMap
ConcurrentHashMap
其中HashMap是map中的代表类型
几乎所有map都用哈希映射的.这是一种元素映射到数组的机制.
哈希映射结构由一个储存元素内部数组,内部采用数组储存,由此可知存在一个确定任意键访问数组的索引机制.
这种机制成为哈希函数.每一个对象都包含着返回整数值的hashCode().要将该值映射到数组,只需转为一个正值,
然后再该值除以数组大小后取余数即可.
每个map类都具有各自的优势和特征,根据不同的业务处理而使用不同的map集合
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2