`
holdbelief
  • 浏览: 697345 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

遍历 Map 的 N 种方式

    博客分类:
  • Java
阅读更多

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));
  }
 }
}

分享到:
评论

相关推荐

    HashMap遍历

    讲述了hashmap的几种遍历方法,相当经典

    数据结构图的遍历及拓扑排序

    图的遍历#include #include #define max 100 //定义节点最大个数 int tag[100]; typedef char datatype; /*----------------定义边...printf(" \n非递归深度优先遍历结果为:"); fdgsmap(maps); printf("\n"); }

    浅谈c++ vector和map的遍历和删除对象

    #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

    jQuery中map函数的两种方式

    两种方式: 1、直接jQuery.map //将原数组中每个元素加 4 转换为一个新数组。 $.map( [0,1,2], function(n){ return n + 4; }); //结果: [4, 5, 6] //原数组中每个元素扩展为一个包含其本身和其值加 1 的数组,并...

    C++ map使用

    根据key值快速查找记录,查找的复杂度基本是Log(N),如果有1000个记录,最多查找10次,1,000,000个记录,最多查找20次。 快速插入Key - Value 记录。 快速删除记录 根据Key 修改value记录。 遍历所有记录。

    基于C++ map中key使用指针问题的详解

    如果map中的数据量比较少时,采用find和for循环遍历的效率基本没有太大的区别,但是在实际的开发过程中,存储在map中的数据往往是大量的,这个时候map采用find方式效率比遍历效率高的多。 确定采用find方式查找数据...

    C++中 map的基本操作

    根据key值快速查找记录,查找的复杂度基本是Log(N),如果有1000个记录,最多查找10次,1,000,000个记录,最多查找20次。 快速插入Key – Value 记录。 快速删除记录 根据Key 修改value记录。 遍历所有记录。 3、使用...

    Map22_communityf5n_husbandfdk_Vc_

    基于VC的有向无环图操作实例源代码,图的节点可以使任意可插入OLE项,在编辑一栏,您可以插入节点、删除节点、拓扑排序、广度遍历、最短路径、插入边等操作

    vue与vue-i18n结合实现后台数据的多语言切换方法

    在XXX.js文件中定义函数: getUser(context,info){ ... let err =data.body.error;... this.users = dataObj.items.map(function (e,i) { //遍历获取的数据,用this.$t()将每项数据与翻译资源对应 e.gen

    Python内置函数之filter map reduce介绍

    调用一个布尔函数bool_func来迭代遍历每个seq中的元素;返回一个使bool_seq返回值为true的元素的序列。 >>> N=range(10) >>> print filter(lambda x:x>5,N) [6, 7, 8, 9] 2. map函数func作用于给定序列的每个元素,...

    基于C++解决众数问题(源码+剖析)

    包含了头文件 (用于输入输出操作)、<unordered_map>(用于使用哈希表)和 (用于使用向量)。...该算法的时间复杂度为O(n),其中n是输入数组的大小。通过使用哈希表记录每个数的频次,我们可以高效地找出众数。

    vector-map:使用带有数组的es6映射的类矢量类

    我们无法轻易找到我们的项目在数组中的位置,因此我们必须遍历所有项目以找到它在哪里,并且消耗时间复杂度O(n)。 好吧,如果所有项目都已排序,我们可以将其时间复杂度降低为O(logn)。 但是,我们无法确定原始...

    leetcode分类-LeetCode:LeetCode在线裁判C++

    取子集两种方式) Trie树 11 中序遍历 无堆栈 (前序 后序) 12 map边删除 边输出 不太建议这么用。。。 以及其他基本用法 iterate 红黑树 13.set 16.unordered_map 与 map 17.最大m字段和 (动态规划?) Maximum ...

    Python入门知识经典总结.docx

    使用heapq模块进行高效的最大或最小堆排序,如heapq.nlargest(n, iterable)或heapq.nsmallest(n, iterable)来获取列表中的前n个最大或最小元素。 函数与闭包: 创建闭包以保存外部函数的状态,确保即使外部函数执行...

    计算表达式计算表达式计算表达式计算表达式

    需要注意的是,合法表达式不能为空,可以出现在表达式中的字符有: 运算符“+”、“-”、“*”、“/”; 左右括号“(”、“)”; ...根据key值快速查找记录,查找的复杂度基本是Log(N),如果有100

    leetcode双人赛-preparing:准备

    实现一个iterator来遍历这个map里面的所有element。 就是类 似树遍历一样的方法 Find an element occurs more than n/3 times in array. 5.后缀波兰表达式STRING转换为中缀表达式的STRING。 这题本来很简单,但我...

    sesvc.exe 阿萨德

    不然就按照链表的方式遍历匹配返回值。 从这两个核心方法(get/put)可以看出 1.8 中对大链表做了优化,修改为红黑树之后查询效率直接提高到了 O(logn)。 但是 HashMap 原有的问题也都存在,比如在并发场景下使用时...

    leetcode答案-leetcode:leetcode

    遍历数组,若数组中不大于n / 2的数字个数超过n / 2,则可以确定[1, n /2]范围内一定有解, 否则可以确定解落在(n / 2, n]范围内。 ###maxinum product of word lengths 一开始想到了排序,然后从大到小进行遍历,...

    基于C++实现集合的关系性质计算器【100010522】

    在输入集合元素的过程中,可以由两个映射std::map来保存原元素的关系,并离散化到$[1,\ n]$中。并且图中同时由邻接矩阵和链式前向星存图,同时保证指定两点关系和遍历边时的效率。 存入图之后,先判断恒等关系和(反...

    python学习笔记(八)函数相关

    文章目录函数相关递归函数生成器生成器方式1:将列表生成式的[]换成()即可生成器方式2:在函数中使用yield关键字迭代器可迭代对象高级函数map函数filter函数reduce函数 递归函数 定义:在函数内部调用自己的函数称为...

Global site tag (gtag.js) - Google Analytics