遍历map

java遍历hashMap、hashSet、Hashtable

馋奶兔 提交于 2020-03-28 16:48:55
一.遍历HashMap Map<Integer, String> map = new HashMap<Integer, String>(); 方法一:效率高 for(Entry<Integer, String> entry:map.entrySet()){   System.out.println(entry.getKey()+"="+entry.getValue()); } 方法二: for (Integer key : map.keySet()) {   String value = map.get(key); (这样取value会导致效率低,不建议。)   System.out.println(value); } 还可以单独遍历value for (Integer value : map.values()) {   System.out.println("Value = " + value); } 方法三:(好处:可以在遍历时调用iterator.remove()来删除entries) Iterator<Map.Entry<Integer, Integer>> entries = map.entrySet().iterator(); while (entries.hasNext()) {   Map.Entry<Integer, Integer> entry =

for of 与 for in的区别

泪湿孤枕 提交于 2020-03-27 05:39:46
遍历数组通常使用for循环,ES5的话也可以使用forEach,ES5具有遍历数组功能的还有map、filter、some、every、reduce、reduceRight等,只不过他们的返回结果不一样。但是使用foreach遍历数组的话,使用break不能中断循环,使用return也不能返回到外层函数。 1 2 3 4 5 6 7 8 Array.prototype.method= function (){   console.log( this .length); } var myArray=[1,2,4,5,6,7] myArray.name= "数组" for ( var index in myArray) { console.log(myArray[index]); } 使用for in 也可以遍历数组,但是会存在以下问题: 1.index索引为字符串型数字,不能直接进行几何运算 2.遍历顺序有可能不是按照实际数组的内部顺序 3.使用for in会遍历数组所有的可枚举属性,包括原型。例如上栗的原型方法method和name属性 所以for in更适合遍历对象,不要使用for in遍历数组。 那么除了使用for循环,如何更简单的正确的遍历数组达到我们的期望呢(即不遍历method和name),ES6中的for of更胜一筹. 1 2 3 4 5 6 7 8 Array

ES6:不同数据结构的遍历方法

扶醉桌前 提交于 2020-03-27 05:31:15
ES6对数组,对象都有不同的遍历方法,以下内容均摘自阮一峰的《ES6标准入门》 一、数组的遍历 除了原生js的forEach()遍历方法外,ES6 提供三个新的方法—— entries() , keys() 和 values() ——用于遍历数组。可以用 for...of 循环进行遍历,唯一的区别是 keys() 是对键名的遍历、 values() 是对键值的遍历, entries() 是对键值对的遍历。 for (let index of ['a', 'b'].keys()) { console.log(index); } // 0 // 1 for (let elem of ['a', 'b'].values()) { console.log(elem); } // 'a' // 'b' for (let [index, elem] of ['a', 'b'].entries()) { console.log(index, elem); } // 0 "a" // 1 "b"entries()、keys()、values()会将空位处理成undefined。 二、对象的遍历 ES6 一共有5种方法可以遍历对象的属性。 (1)for...in for...in 循环遍历对象自身的和继承的可枚举属性(不含 Symbol 属性)。 (2)Object.keys(obj) Object

JavaScript中的迭代器与循环

烂漫一生 提交于 2020-03-24 18:15:35
引言: 本文涉及内容包括: forEach方法 for-in方法 for-of方法 eval()方法 map()方法 今天来总结一下,JS中我们常见的循环方式与迭代器,深入了解他们之间的区别,及适合的使用场景。 最早的数组遍历方式 var a = ["a", "b", "c"]; for(var index = 0;index < a.length;index++){ console.log(a[index]); } for循环 ,我们最熟悉也是最常用的循环迭代方式,后来的许多迭代方法都是基于for循环封装的。 1 forEach 语法: [].forEach( function (value, index, array) { // ... }); forEach遍历数组,而不是遍历对象哦,而且在遍历的过程中不能被终止,必须每一个值遍历一遍后才能停下来. 也就是说:你不能使用break来退出循环, 不能使用return语句来返回到外层 jquery中forEach 注意其与jQuery的$.each类似,只不过参数正好是相反的! $.each([], function (index, value, array) { // ... }); 2 for...in 适合进行普通对象的遍历 for-in循环遍历对象的key,即键值对的键名。 特性如下: 1. 方法遍历到的index

java中遍历map的两种方式

你离开我真会死。 提交于 2020-03-21 08:12:37
1.先将map对象转成set,然后再转为迭代器 1 Iterator iterator = map.entrySet().iterator(); 2 while(iterator.hasNext()){ 3 Entry entry = iterator.next(); 4 System.out.println(entry.getKey()); // 获取key 5 System.out.println(entry.getValue()); // 获取value 6 } 2.先将map转为set类型的key值集合,然后转为迭代器 1 Iterator iterator = map.keySet().iterator(); 2 while(iterator.hasNext()){ 3 Object key = (Object)iterator.next(); 4 System.out.println(key); // 获取key 5 System.out.println(map.get(key)); // 获取value 6 } 来源: https://www.cnblogs.com/houhaihu/p/6139181.html

ajax返回List类型遍历小计

无人久伴 提交于 2020-03-17 02:56:28
ajax 返回 类型为List<Map> 类型的JSON格式所以记一下 success: function(jsonData){ if (jsonData !=null && jsonData !==undefined){ $.each(jsonData,function(i, n){ //循环list var lectureName=n["lecture_name"]; //我的里面是map的值所以 根据key获取 if ( lectureName==undefined){ var lectureName ="无小结名称"; } $("#lectureId").append('<option value="' + n["id"] + '">' +lectureName + '</option>'); }) } } : 来源: CSDN 作者: 一只想飞的猪猪 链接: https://blog.csdn.net/weixin_39715061/article/details/104819010

java中Map遍历的方法

让人想犯罪 __ 提交于 2020-03-14 04:20:34
1 public class testMap { 2 public static void main(String[] args) { 3 4 Map<String, String> map=new HashMap<String,String>(); 5 map.put("a", "aaaa"); 6 map.put("b", "bbbb"); 7 map.put("c", "cccc"); 8 map.put("d", "dddd"); 9 map.put("e", "eeee"); 10 11 // iterator 遍历 12 Set set=map.keySet(); 13 for(Iterator iter=set.iterator();iter.hasNext();){ 14 String key=(String) iter.next(); 15 String value=(String) map.get(key); 16 System.out.println(key+"===="+value); 17 } 18 19 20 // 增强for循环遍历 21 // 查找键(key) 22 for(Object key:map.keySet()){ 23 System.out.println("集合的键是"+"#########"+key); 24 } 25 // 查找值

go range详解

好久不见. 提交于 2020-03-10 13:32:29
1. 前言 range是Golang提供的一种迭代遍历手段,可操作的类型有数组、切片、Map、channel等,实际使用频率非常高。 探索range的实现机制是很有意思的事情,这可能会改变你使用range的习惯。 2. 热身 按照惯例,我们看几个有意思的题目,用于检测对range的了解程度。 2.1 题目一:切片遍历 下面函数通过遍历切片,打印切片的下标和元素值,请问性能上有没有可优化的空间? func RangeSlice(slice []int) { for index, value := range slice { _, _ = index, value } } 程序解释: 函数中使用for-range对切片进行遍历,获取切片的下标和元素素值,这里忽略函数的实际意义。 参考答案: 遍历过程中每次迭代会对index和value进行赋值,如果数据量大或者value类型为string时,对value的赋值操作可能是多余的,可以在for-range中忽略value值,使用slice[index]引用value值。 2.2 题目二:Map遍历 下面函数通过遍历Map,打印Map的key和value,请问性能上有没有可优化的空间? func RangeMap(myMap map[int]string) { for key, _ := range myMap { _, _ = key,

浅谈互联网之路

混江龙づ霸主 提交于 2020-03-09 14:30:35
很受用的一句话: 你吃不了学习的苦,就要吃生活的苦 相信很多的人在初入互联网行业的时候,都会很迷茫,不知道自己要干什么,能发展到什么程度,薪水会达到什么水平,自己能否养活自己,甚至是一家人 我身边有很鲜活的例子,你对自己不够狠,那别人对你狠的时候,你可能就一下子被打趴下了,我的同学,朋友也有步入到这个行业,但是目前都铩羽而归,是因为他们的技术不过关,还是能力不过关,我觉得他们的技术确实一般,但是胜任一份不难的工作却是绰绰有余,并且还很轻松,这个事情说明了一个问题,我们还是要自身打铁能力过硬,我向来喜欢一句话,遇到事,尤其是分配给自己的事,第一步想到的事如何去解决它,别人想一种方法,你要想十种,甚至更多,就比如Map的遍历方式,我其中的一篇博客就很详细的介绍了,因为我去整理的时候发现,确实有这么多种方式,很实用, Map的遍历方式 总结下来就一句话,遇事分析,竭尽全力找方法,结果是好是坏与你无关,你追求的是一个过程,当你超越自己的时候,金钱就会持续找到你,预祝你早日实现财务自由 更多实用知识,关注博客最新 来源: CSDN 作者: 技术引领者 链接: https://blog.csdn.net/qq_37022150/article/details/104747837

Java中map接口 遍历map

馋奶兔 提交于 2020-03-07 13:32:02
转自: https://www.cnblogs.com/wjk921/p/4918442.html java集合框架用于存储数据,也被称为集合类 位于java.util包下 java.util包下常用接口和类 Collection和Map是Java集合框架的根接口 List集合是有序集合,集合中的元素可以重复,访问集合中的元素可以根据元素的索引来访问。 Set集合是无序集合,集合中的元素不可以重复,访问集合中的元素只能根据元素本身来访问(也是不能集合里元素不允许重复的原因)。 Map集合中保存Key-value对形式的元素,访问时只能根据每项元素的key来访问其value。 Map接口 Map接口不是Collection接口的继承。Map接口用于维护键/值对(key/value pairs)。该接口描述了从不重复的键到值的映射。 HashMap 是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度。 HashMap最多只允许一条记录的键为Null;允许多条记录的值为Null;HashMap不支持线程的同步,即任一时刻可以有多个线程同时写HashMap; 可能会导致数据的不一致。如果需要同步,可以用Collections的synchronizedMap方法使HashMap具有同步的能力。 TreeMap 不仅可以保持顺序