- 浏览: 190138 次
- 性别:
- 来自: 上海
文章分类
最新评论
有一个Map对象,这时候使用keySet()方法获取所有的key值,比如:
Map map = new HashMap();
map.put(1, "a");
map.put(2, "b");
map.put(3, "c");
map.put(4, "d");
Set keys1 = map.keySet();
Set keys2 = map.keySet();
Set keys3 = map.keySet();
上面三个set对象key1,key2,key3引用的是一个对象。这时map的keySet()方法只返回一个set实例,所以当从key1中删除一个对象时候,key2和key3将会受到影响。
keys1.remove(1);
System.out.println(keys1);
System.out.println(keys2);
System.out.println(keys3);
打印结果为:
[2, 4, 3]
[2, 4, 3]
[2, 4, 3]
Map.values():
for (ProductDto productDto : specCodeMap.values()) {
Map<String, Object> param = new HashMap<String, Object>();
param.put("quantity", productDto.getQuantity());
param.put("psCode", productDto.getSpecCode());
Map map = new HashMap();
map.put(1, "a");
map.put(2, "b");
map.put(3, "c");
map.put(4, "d");
Set keys1 = map.keySet();
Set keys2 = map.keySet();
Set keys3 = map.keySet();
上面三个set对象key1,key2,key3引用的是一个对象。这时map的keySet()方法只返回一个set实例,所以当从key1中删除一个对象时候,key2和key3将会受到影响。
keys1.remove(1);
System.out.println(keys1);
System.out.println(keys2);
System.out.println(keys3);
打印结果为:
[2, 4, 3]
[2, 4, 3]
[2, 4, 3]
Map.values():
for (ProductDto productDto : specCodeMap.values()) {
Map<String, Object> param = new HashMap<String, Object>();
param.put("quantity", productDto.getQuantity());
param.put("psCode", productDto.getSpecCode());
发表评论
文章已被作者锁定,不允许评论。
-
ReentrantLock与Condition
2017-03-17 14:25 532多线程和并发性并不是什么新内容,但是 Java 语言设计中的创 ... -
java linux监控
2017-03-13 17:49 502http://agapple.iteye.com/blog/1 ... -
transient和volatile两个关键字
2017-02-16 09:47 576transient和volatile两个关 ... -
java 锁机制
2016-12-09 13:43 481一段synchronized的代码被 ... -
java 正则表达式
2016-12-02 10:28 523众所周知,在程序开发中,难免会遇到需要匹配、查找、替换、判断字 ... -
java ClassNotFoundException和NoClassDefFoundException的差别
2016-08-17 19:47 912首先从名字上可以看出一类是异常,一类属于错误。异常可以通过异常 ... -
ThreadLocal
2016-07-19 11:10 335ThreadLocal是什么 Thre ... -
java CAS
2016-07-10 14:55 347cas 乐观锁每次不锁定整个线程,在操作之前进行判断。悲观锁独 ... -
concurrenthashmap
2016-07-10 11:11 425hash table虽然性能上不如 ... -
java 线程池的使用
2016-07-10 09:52 3771. 引言 合理利用线程池能够带来三个好处。第一:降低资源消 ... -
java.util.concurrent
2016-07-03 16:24 413我们都知道,在JDK1.5之 ... -
JVM 配置 以及垃圾收集器的选择
2016-04-15 12:36 735JVM监控的关键指标说明: a) FGC的环比增加次数。Zab ... -
jvm实时监控工具
2016-04-09 09:35 469 -
哈希 、一致性哈希、余数式哈希
2016-04-07 16:10 869什么是Hash Hash,一 ... -
jvm dump 相关
2016-03-22 17:22 684http://www.cnblogs.com/edwardla ... -
深入剖析volatile关键字
2016-03-21 16:02 552深入剖析volatile关键字 ... -
java线程安全问题之静态变量、实例变量、局部变量
2016-03-08 12:52 578java多线程编程中,存在很多线程安全问题,至于什么是线程安全 ... -
有状态的bean和无状态的bean的区别
2016-03-08 11:23 1526有状态会话bean :每个用户有自己特有的一个实例,在用户的生 ... -
Java nio详解
2016-01-20 16:30 557http://www.ibm.com/developerwor ... -
java 不定长数组
2015-11-24 15:00 792在调用某个方法时,若是方法的参数个数事先无法确定该如何处理 ...
相关推荐
2、遍历Map.keySet():它是Map中key值的集合,我们可以通过遍历这个集合来 读取Map中的元素; 3、遍历Map.values():它是Map中value的集合,我们可以直接通过这个集合遍历 Map中的值,却不能读取key。
这是最基础的遍历方式,通过获取`Map`的`keySet`,然后用增强型for循环遍历`keySet`,再通过`get()`方法获取对应的`value`。 ```java for (Integer in : map.keySet()) { String str = map.get(in); System.out...
`Map.keySet()`方法可以返回一个包含所有键的`Set`视图。我们可以通过这个`Set`来获取每一个键,进而使用`Map.get(key)`方法获取与该键对应的值。 **代码示例:** ```java for (Integer key : map.keySet()) { ...
`, `Collection<Integer> values = map.values();`, `Set<Map.Entry, Integer>> entries = map.entrySet();` ArrayList是List接口的一个具体实现,它基于动态数组。ArrayList的特点是可以快速访问任意位置的元素,...
这种方法首先获取`Map`的所有键集合(`keySet`),然后通过迭代器或者增强型for循环(也称为foreach循环)遍历这些键,并使用`get()`方法获取与每个键相对应的值。 **示例代码:** ```java public static void main...
System.out.println("使用 values 显示全部值内容:" + map.values()); ``` 3. **Map的常用方法**: - **containsValue()** 和 **containsKey()**: 分别用于检查Map中是否存在指定的值或键。 - **clear()**: ...
1. **通过Map.keySet遍历key和value** 这种方法是最直观的,直接获取Map的keySet并进行迭代。代码简洁,但存在效率问题。在遍历过程中,每次获取value都需要通过`map.get(key)`调用来查询,这可能导致额外的计算...
1. **遍历键集合**:Map集合提供了keySet()方法,返回一个包含所有键的Set视图。可以通过迭代器或增强for循环遍历这个键集合,然后使用get()方法获取对应的值。例如: ```java Set<Object> keys = map.keySet(); for...
如果只关心 Map 中的键或值,可以直接遍历 `keySet` 或 `values()`。这种方式在性能上略优于遍历 `entrySet`,代码也更简洁。 ```java // 遍历 keys for (Integer key : map.keySet()) { System.out.println(...
Map 遍历是集合操作中的一种重要操作,一般来说,有三种方式来遍历 Map 集合:使用 values() 方法遍历、使用 keySet() 方法遍历和使用 entrySet() 方法遍历。 第一种方法:使用 values() 方法遍历 这个方法是最...
Collection<String> values = map.values(); // 获取所有值的Collection集合 for (String value : values) { System.out.println(value); } ``` 3. 使用entrySet方法获取所有键值对的Set集合,遍历这些键值对...
Iterator<Product> hmEntry = cartMap.values().iterator(); while(hmEntry.hasNext()){ productNum += hmEntry.next().getProductNum(); } return productNum; } /** * 统计购物车商品总价 */ ...
assert map.keySet() == ['a', 'b', 'c'] assert map.values() == [1, 2, 3] ``` 此外,可以使用`putAll(map2)`方法将一个Map的所有键值对复制到另一个Map中,如`explicitMap = new TreeMap(); explicitMap.putAll...
我们首先调用`map.values()`获取到所有值的`Collection`,然后通过迭代器遍历这个`Collection`,依次打印出每个值。这种方式简单易懂,适用于只需要处理值的情况,但无法直接访问对应的键。 ```java public ...
- `values()`:返回Map中所有值的Collection视图,可遍历值。 7. **Map的性能和优化**: 不同类型的Map有不同的性能特性。例如,HashMap提供快速随机访问,而TreeMap则按照键的自然顺序或自定义比较器进行排序。...
如果仅需要键或值,可以通过调用`keySet()`或`values()`方法来实现遍历: ```java Map, Integer> map = new HashMap(); // 遍历键 for (Integer key : map.keySet()) { System.out.println("Key=" + key); } // ...
遍历 Map 集合有多种方式,例如使用 `keySet()` 方法获取所有键,使用 `entrySet()` 方法获取所有键值对,使用 `values()` 方法获取所有值。例如: ``` for (Object o : map.keySet()) { map.get(o); } ``` 或 ``` ...
通过`keySet()`、`values()`和`entrySet()`方法,我们可以分别获取键的集合、值的集合和键值对的集合,从而方便地遍历和操作Map。最后,我们删除了一个键值对,并检查Map是否包含特定键以及Map是否为空。 在实际...
Map接口还提供了`keySet()`方法,返回所有键的集合,可以先遍历键集,再通过键获取对应的值。示例代码如下: ```java for (String key : map.keySet()) { Integer value = map.get(key); System.out.println(...
另一种是使用`keySet()`和`values()`方法,分别遍历键和值: ```java for (String key : map.keySet()) { System.out.println("Key: " + key + ", Value: " + map.get(key)); } for (Integer value : map.values...