Set代表一种无序集合,集合元素不可重复;Map代表一种多个key-value对组成的集合
从Set和Map的继承体系图看,如果从名称分析,Set和Map有着千丝万缕的联系。并且从JDK中提供的Map接口中,你会发现提供了这样一个方法: Set keySet();这就说明了,如果抛开Map中的value,那么Map中的所有key的实际上就是一个Set集合,而且我们查询的时候常常是通过key来查找...
分类:
编程语言 时间:
2015-05-13 10:43:35
阅读次数:
193
Map接口继承图:
Map常用方法添加,删除操作
Object put(Object key, Object value)
Object remove(Object key)
void putAll(Map m)
void clear
元视图操作的方法
Set keySet()
Collection values()
Set entrySet()
元素查询操作
Object get(Object...
分类:
编程语言 时间:
2015-05-12 09:35:12
阅读次数:
112
Map是java中的接口,Map.Entry是Map的一个内部接口。
Map提供了一些常用方法,如keySet()、entrySet()等方法。
keySet()方法返回值是Map中key值的集合;entrySet()的返回值也是返回一个Set集合,此集合的类型为Map.Entry。
Map.Entry是Map声明的一个内部接口,此接口为泛型,定义为Entry。它表示Map中的一...
分类:
其他好文 时间:
2015-05-11 17:53:11
阅读次数:
126
泛型(generic)颠倒数组中的所有元素我的java基础一直不是很好,最近抽出时间,来强化一下自己的基础知识,基本功扎实,才能走的更踏实。对于Map集合,我们要熟练的使用增强额for循环机制(for each),其中entrySet method是很重要的。@Test
public void test1(){
Map map = new H...
分类:
编程语言 时间:
2015-05-10 15:46:57
阅读次数:
131
Map中是没有迭代器的,那么Map中的元素是如何取出的呢?
有两种方法:
一种是通过Set keySet ()
一种是通过 Set > entrySet ()
keySet:: 将map中所有的键存入到Set集合中。在通过map的getKey ()方法即可获得 value的值
entrySet: 返回此映射中包含的映射关系的Set视图。既包含键也包含值。 这个映...
分类:
编程语言 时间:
2015-05-02 15:11:31
阅读次数:
144
1. 阐述 对于Java中Map的遍历方式,很多文章都推荐使用entrySet,认为其比keySet的效率高很多。理由是:entrySet方法一次拿到所有key和value的集合;而keySet拿到的只是key的集合,针对每个key,都要去Map中额外查找一次value,从而降低了总体效率。那么实....
分类:
编程语言 时间:
2015-04-22 20:04:17
阅读次数:
171
本文就 《基于LinkedHashMap实现LRU缓存调度算法原理及应用 》一文作为材料,记录一些常见问题,备忘。
延伸出两道常见的Java面试题:
插入Entry节点到table表的链表中时,Hashmap 和LinkedHashmap使用头茶法还是尾茶法?遍历map的时候,Entry.Entryset()获取的set集合,是按照从头到尾还是从尾到头的顺序存储的?
实现LR...
分类:
编程语言 时间:
2015-04-22 01:59:14
阅读次数:
294
http://blog.csdn.net/liu826710/article/details/9001254在Map集合中values():方法是获取集合中的所有的值----没有键,没有对应关系,KeySet():将Map中所有的键存入到set集合中。因为set具备迭代器。所有可以迭代方式取出所有的...
分类:
其他好文 时间:
2015-04-15 11:16:10
阅读次数:
121
最近遇到一项需求,要求把properties文件中的内容读取出来供用户修改,修改完后需要再重新保存到properties文件中。很简单的需求吧,可问题是Properties是继承自HashTable的,直接通过keySet()、keys()或entrySet()方法对Properties中的元素进行...
分类:
其他好文 时间:
2015-04-11 11:46:38
阅读次数:
194
/**
* 在for-each循环中使用entries来遍历
* 这是最常见的并且在大多数情况下也是最可取的遍历方式。在键值都需要时使用
* 如果遍历的是一个空的map,会报数组越界 ,java5引入,不兼容老版本
* @param map
*/
public void methodOne(Map map){
for (Map.Entry entry : map.entrySet()...
分类:
编程语言 时间:
2015-04-09 17:24:56
阅读次数:
208