A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

集合类是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集合

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马