import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
/**
* 遍历 Map 的 N 种方式
* @author Administrator
*
*/
public class TestMap
{
public static void main(String[] args)
{
Map m = new HashMap();
m.put(1.34, "Double1");
m.put("1", "Str1");
m.put('2', "char1");
// 1 Map.Entry 方式
System.out.println("方式1");
Iterator iter = m.entrySet().iterator();
while(iter.hasNext())
{
Map.Entry entry = (Entry) iter.next();
System.out.println(entry.getKey() + ":" + entry.getValue());
}
// 2
System.out.println("方式2");
Iterator keyIter = m.keySet().iterator();
while(keyIter.hasNext())
{
Object key = keyIter.next();
System.out.println(key + ":" + m.get(key));
}
// 3
System.out.println("方式3");
for(Object key : m.keySet())
{
System.out.println(key + ":" + m.get(key));
}
// 4
System.out.println("方式4");
for(Iterator keyIter4 = m.keySet().iterator(); keyIter4.hasNext();)
{
Object key = keyIter4.next();
System.out.println(key + ":" + m.get(key));
}
}
}
分享到:
相关推荐
Map是一种常用的数据结构,在Java中有多种遍历Map的方式。今天,我们来讨论一种遍历Map的方式,即使用Map.Entry和Map.entrySet()。 Map.Entry是什么? ---------------- Map.Entry是一个接口,表示一个映射项,...
Java集合遍历的几种方式总结及详细比较 Java集合遍历是Java编程中最基本也是最重要的操作之一。集合遍历是指对集合中的每个元素进行访问和处理的过程。Java中提供了多种集合遍历方式,包括迭代器遍历、Map遍历、...
- `std::unordered_map`:遍历哈希表通常需要遍历所有桶,因此其时间复杂度也是O(n),但实际运行速度可能比`std::map`快,尤其是当元素数量很大时。 **查找操作**: - `std::map`:查找操作同样为O(log n),因为...
在Java编程中,`HashMap`是一种常用的数据结构,它实现了`Map`接口,提供了基于哈希表的存储方式,允许我们快速地查找、插入和删除键值对。对于`HashMap`的遍历,是进行数据处理和分析时不可或缺的操作。本文将深入...
遍历Map有多种方式,一种是使用`entrySet()`,它可以返回Map中所有的键值对: ```java for (Map.Entry, Integer> entry : map.entrySet()) { System.out.println("Key: " + entry.getKey() + ", Value: " + entry....
图的遍历#include #include #define max 100 //定义节点最大个数 int tag[100]; typedef char datatype; /*----------------定义边...printf(" \n非递归深度优先遍历结果为:"); fdgsmap(maps); printf("\n"); }
在JavaScript中,数组遍历是常见的操作,原生的`forEach()`和`map()`方法以及jQuery的`$.each()`和`$.map()`提供了不同的遍历方式。这些方法各有特点,适用于不同的场景。以下是对这些方法的详细介绍: 1. **原生JS...
`map`的数据结构通常实现为红黑树,提供了O(log n)的时间复杂度进行插入、查找和删除操作。下面我们将详细探讨`map`的基本用法和嵌套用法。 ### 一、map基本用法 1. **头文件** 使用`<map>`头文件来包含`map`...
在Go语言中,字典(map)是一种非常重要的数据结构,用于存储键值对的无序集合。本文将深入探讨Go语言字典的创建、填充、遍历、查找、修改和删除等操作。 1. **字典的创建** - `make(map[KeyType]ValueType, ...
遍历Map通常使用迭代器,如下所示: ```cpp for (map, string>::iterator iter = mapStudent.begin(); iter != mapStudent.end(); iter++) { cout << iter->first << "" << iter->second ; } ``` 这段代码会依次...
最后,我们使用范围for循环遍历map的所有元素,输出每个学生的姓名和分数。 map还提供了其他高级功能,如查找元素: ```cpp if (student_scores.find("Dave") != student_scores.end()) { std::cout ["Dave"] ; }...
这比起传统数组的遍历查找(在最坏的情况下时间复杂度为O(n)),Map对象在性能上有着明显的优势。 另外,值得一提的是,在Vue.js中,我们经常需要响应式地处理数据。Vue提供了一种响应式系统来追踪依赖并自动更新...
map提供了两种插入元素的方式: - 通过`[]`操作符:`enumMap[2] = "Two";`,但这种方法若key不存在,会先创建一个默认元素再赋值,可能带来额外开销。 - 使用`insert()`函数:`enumMap.insert(map, CString> :: ...
红黑树是一种自平衡二叉查找树,能够保证树的高度大致保持为log(n),从而使得插入、删除和查找操作的时间复杂度都为O(log n)。 2. **有序性**:`map`和`set`都保证了元素的有序性,默认情况下按照升序排序。 3. **...
使用"vectormap"时,开发者可以期望在顺序遍历和查找操作上获得性能提升,同时保留了类似数组的访问方式。然而,这种自定义容器可能会有更高的内存开销,因为它需要额外的存储空间来维护索引。 为了更好地理解并...
本文主要分析了JS中常用的7种数组遍历方式,并进行了性能对比。以下是这些遍历方式的详细说明: 1. **普通for循环**: ```javascript for (j = 0; j ; j++) {} ``` 这是最基础且广泛使用的遍历方式,性能较好,...
#include <map> #include using namespace std; int main(int argc, char* argv[]) { printf(Hello World!\n); vector<int> a; //创建一个对象 a.push_back(1); a.push_back(2); a.push_back(3); v
`map`容器是一种关联容器,它将唯一的键值与关联的值进行存储,这里的键值通常是用来查找对应值的。`map`内部实现为红黑树,这保证了插入、删除和查找操作的时间复杂度为O(log n)。在C++中,`map`的定义位于`<map>`...
遍历`Map`集合主要有三种方式: 1. **迭代器(Iterator)**:通过`Map`的`entrySet()`方法获取键值对的`Set`视图,然后使用迭代器遍历。 2. **foreach循环**:利用Java的增强for循环,同样通过`entrySet()`来遍历。 3....
#### - 遍历Map 可以通过`for...of`循环或`forEach`方法遍历`Map`。 ```javascript for (let [key, value] of map) { console.log(key, value); } // 或者 map.forEach((value, key) => { console.log(key, ...