偶然今天发现HashMap 用到下面的格式 ,直接循环遍历整个hashMap hashTable
返回的 set 中的每个元素都是一个 Map.Entry 类型。
private Hashtable<String, String> emails = new Hashtable<String, String>();
// 方法一: 用entrySet()
// Iterator it = emails.entrySet().iterator();
// while(it.hasNext()){
// Map.Entry m=(Map.Entry)it.next();
// logger.info("email-" + m.getKey() + ":" + m.getValue());
// }
// 方法二:直接再循环中
for (Map.Entry<String, String> m : emails.entrySet()) {
logger.info("email-" + m.getKey() + ":" + m.getValue());
}
// 方法三:用keySet()
Iterator it = emails.keySet().iterator();
while (it.hasNext()){
String key;
key=(String)it.next();
logger.info("email-" + key + ":" + emails.get(key));
}
// 方法五:还是用keySEt() (04.29添加)
for(Object m: emails.keySet()){
logger.info("email-" + m+ ":" + emails.get(m));
}
另外 我们可以先把hashMap 转为集合Collection,再迭代输出,不过得到的对象
Map aa = new HashMap();
aa.put("tmp1", new Object()); //追加 替换用同样的函数.
aa.remove("temp1"); //删除
for (Iterator i = aa.values().iterator(); i.hasNext(); ) {
Object temp = i.next();
} //遍历
来个完整的,包含TreeSet的元素内部排序的
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
HashMap<Object,Object> hash = new HashMap<Object,Object>();
TreeMap<Object,Object> treeMap = new TreeMap<Object,Object>();
list.add("a");
list.add("b");
list.add("c");
hash.put(3, 3);
hash.put(4, 4);
hash.put(5, 5);
hash.put(6, 6);
hash.put(1, 1);
hash.put(2, 2);
treeMap.put(1, 1);
treeMap.put(2, 2);
treeMap.put(3, 3);
treeMap.put(4, 4);
treeMap.put(5, 5);
treeMap.put(6, 6);
//list遍历
for(String m: list){
System.out.println(m);
}
// hashmap entrySet() 遍历
for(Map.Entry<Object,Object> m: hash.entrySet()){
System.out.println(m.getKey()+"---"+m.getValue());
}
//hashmap keySet() 遍历
for(Object m: hash.keySet()){
System.out.println(m+"---"+hash.get(m));
}
// treemap keySet()遍历
for(Object m: treeMap.keySet()){
System.out.println(m+"---"+treeMap.get(m));
}
}
分享到:
相关推荐
3. 通过Map.entrySet遍历key和value 这是一种使用增强for循环遍历键值对的方法。 ```java for (Map.Entry, String> entry : map.entrySet()) { System.out.println("key= " + entry.getKey() + " and value= " + ...
2. **遍历HashMap** 使用`entrySet()`或`keySet()`的方式同样适用于遍历`HashMap`。 ```java HashMap, Object> hash = new HashMap(); hash.put(3, 3); hash.put(4, 4); hash.put(5, 5); hash.put(6, 6); ...
在Java编程语言中,`HashTable`是一...通过提供的源代码和详细教程,你可以深入理解`HashTable`的工作原理以及如何在实际项目中有效地遍历和使用它。同时,这也会帮助你更好地掌握Java容器类的使用,提升你的编程技能。
Map接口的实现类包括HashMap, TreeMap, Hashtable等。由于Map是接口,所以无法直接创建实例,通常使用其具体实现类,如HashMap。 在遍历Map时,我们通常有三种方式: 1. 使用keySet方法获取所有键,然后遍历这些键...
Java中的`Map`接口主要有三种实现类:`HashMap`、`Hashtable`、`TreeMap`等,这些实现类在实际应用中各有特点。本篇文章将详细介绍如何遍历`Map`集合,并提供两种不同的遍历方法。 #### 二、Map集合遍历方法 #####...
在Java编程语言中,Map接口是集合框架的重要组成部分,它提供了键值...在实际应用中,选择合适的Map实现类和理解如何遍历Map元素,可以帮助优化程序性能和逻辑。此外,Map还可以用于实现缓存、存储配置信息等多种用途。
由于`Hashtable`实现了`Map`接口,我们可以使用迭代器或者增强的`for`循环遍历它的键值对: #### 使用迭代器 ```java Iterator<Map.Entry, Integer>> iterator = table.entrySet().iterator(); while (iterator....
例如,可以使用`map.entrySet().stream().sorted(Map.Entry.comparingByKey()).collect(Collectors.toList())`来根据键进行排序,或者使用`map.entrySet().stream().sorted(Map.Entry.comparingByValue()).collect...
5. **多种实现**:Java提供多种Map的实现,包括HashMap、TreeMap、LinkedHashMap、Hashtable等,每种实现都有其特定的性能和使用场景。 **二、Map集合的遍历方式** 1. **键集遍历**:通过`keySet()`方法获取所有键...
Iterator<Map.Entry, String>> it = hashmap.entrySet().iterator(); while (it.hasNext()) { Map.Entry, String> entry = it.next(); System.out.println(entry.getValue()); } ``` 现在,我们来对比其他几种...
在Java的`java.util`包中,集合类扮演着重要的角色,其中List和Map是最为常见的两种。List的实现例如ArrayList和Vector,它们都是可变大小的列表,适合存储和操作各种类型对象的序列。特别是ArrayList,基于动态数组...
在Java编程中,Map接口是用于存储键值对的数据结构,常见的实现类包括HashMap、TreeMap、Hashtable和LinkedHashMap等。这些实现类各有特点,但默认并不保证元素的顺序。当我们需要按照Value(值)对Map进行排序时,...
例如,遍历`List`时,可以写成`for (Type element : list) {...}`,遍历`Map`时,可以写成`for (Map.Entry, Value> entry : map.entrySet()) {...}`。 3. **List的get()方法**:对于`List`,可以使用索引来遍历,如...
Map接口提供了多种实现类,如HashMap、TreeMap、Hashtable和LinkedHashMap等。当需要对Map中的数据进行排序时,通常有两种情况:按key排序和按value排序。本文将详细介绍如何在Android环境下对Map进行这两种排序。 ...
Map接口的主要实现类有HashMap、TreeMap、LinkedHashMap、Hashtable等,它们各自有不同的特性和使用场景。 1. HashMap:HashMap是最常用的Map实现,它允许null键和null值。基于哈希表实现,因此具有快速的插入、...
6. Map接口中的entrySet()返回的集合支持通过迭代器进行遍历,遍历每个Map.Entry对象,可以访问键和值。例如: ```java for (Map.Entry, ValueType> entry : map.entrySet()) { KeyType key = entry.getKey(); ...
- 遍历Map:可以通过`keySet()`获取所有的键,然后通过键获取对应的值进行遍历,或者使用`entrySet()`获取键值对的Set,直接遍历键值对。 - `Map.Entry`: 表示Map中的一个键值对,提供了`getKey()`和`getValue()`...
遍历`HashMap`,可以使用`entrySet().iterator()`,如下所示: ```java HashMap, String> map = new HashMap(); map.put("a", "123"); map.put("b", "456"); map.put("c", "178"); Iterator<Map.Entry, String>> ...
在Java编程语言中,Map接口提供了多种实现,每种实现有着不同的特性和使用场景,其中涉及到排序的问题主要涉及HashMap、Hashtable、LinkedHashMap和TreeMap。本文将深入探讨如何在Java中对Map进行按键排序和按值排序...
2. 集合框架:Java集合框架包括接口和实现类,如List(ArrayList、LinkedList)、Set(HashSet、TreeSet)和Map(HashMap、LinkedHashMap、TreeMap)。ArrayList特点是动态扩容,基于数组实现,访问快但插入删除慢;...