遍历map

js 数组遍历map踩坑

匿名 (未验证) 提交于 2019-12-03 00:08:02
在react或者vue进行页面渲染时候,我们比较喜欢使用map循环遍历属性相似的节点,例如列表渲染 1 let res: any[] | JSX.Element[] = [] 2 Object.keys(item).forEach((rowItem: any) => { 3 if (rowItem === 'id' || rowItem === 'show' || rowItem === 'text') { 4 return 5 } else { 6 res.push( 7 <div style={{ paddingBottom: '10px' }}> 8 <span className="desc-title">{`${item[rowItem].label}:`}</span> 9 <span className="desc-text">{`${item[rowItem].value}`}</span> 10 </div>, 11 ) 12 } 13 }) 我们在map循环一个数组的时候,在map中加入判断条件例如item.key = id时候,map不会中断条件而继续执行item.key != id的条件,循环中不会直接跳出循环; map和foreach都不会跳出循环 1 let arr = [ 2 {id:'1',num:'1'}, 3 {id:'2',num:'2'},

react遍历数组

匿名 (未验证) 提交于 2019-12-02 23:42:01
import React ,{Component} from 'react' class App extends Component{ constructor(props){ super(props) this.state = { list:["星期一","星期二","星期三"] } } render(){ return ( <div> <div> { // react里没有指令,只能用map方法遍历数组 this.state.list.map((item,i)=>{ // return 一个标签 标签里要加上key,通常key用数组的下标 return <p key={i}>{item}</p> }) } </div> </div> ) } } export default App;

java Listlterator和Iterator区别

匿名 (未验证) 提交于 2019-12-02 21:53:52
Listlterator和Iterator区别 不同点: 使用范围不同,Iterator可以应用于所有的集合,Set、List和Map和这些集合的子类型。而ListIterator只能用于List及其子类型。 ListIterator有add方法,可以向List中添加对象,而Iterator不能。 ListIterator和Iterator都有hasNext()和next()方法,可以实现顺序向后遍历,但是ListIterator有hasPrevious()和previous()方法,可以实现逆向(顺序向前)遍历。Iterator不可以。 ListIterator可以定位当前索引的位置,nextIndex()和previousIndex()可以实现。Iterator没有此功能。 都可实现删除操作,但是ListIterator可以实现对象的修改,set()方法可以实现。Iterator仅能遍历,不能修改。 文章来源: java Listlterator和Iterator区别

Java Map遍历方式的选择

匿名 (未验证) 提交于 2019-12-02 21:53:52
1. 阐述   对于Java中Map的遍历方式,很多文章都推荐使用entrySet,认为其比keySet的效率高很多。理由是:entrySet方法一次拿到所有key和value的集合;而keySet拿到的只是key的集合,针对每个key,都要去Map中额外查找一次value,从而降低了总体效率。那么实际情况如何呢?   为了解遍历性能的真实差距,包括在遍历key+value、遍历key、遍历value等不同场景下的差异,我试着进行了一些对比测试。 2. 对比测试   一开始只进行了简单的测试,但结果却表明keySet的性能更好,这一点让我很是费解,不都说entrySet明显好于keySet吗?为了进一步地进行验证,于是采用了不同的测试数据进行更详细的对比测试。 2.1 测试数据 2.1.1 HashMap测试数据 HashMap-1,大小为100万,key和value均为String,key的值为1、2、3……1000000: Map<String, String> map = new HashMap<String, String>(); String key, value; for (i = 1; i <= num; i++) { } HashMap-2,大小为100万,key和value均为String,key的值为50、100、150、200、……、50000000: Map

Java中遍历Map对象的4种方法

匿名 (未验证) 提交于 2019-12-02 21:52:03
java中的所有map都实现了Map接口,以下方法适用于任何map实现(HashMap, TreeMap, LinkedHashMap, Hashtable, 等等)。 1 HashMap < Integer , String > map = new HashMap <>(); 2 map . put ( 1 , "jack" ); 3 map . put ( 2 , "tom" ); 4 map . put ( 3 , "jeffy" ); 方法一:在for-each循环中使用entries来遍历 这是最常见的并且在大多数情况下也是最可取的遍历方式。在键值都需要时使用。 1 for ( Map . Entry < Integer , String > entry : map . entrySet ()) { 2 System . out . println ( "key = " + entry . getKey ()+ ",value = " + entry . getValue ()); 3 } 如果你遍历的是一个空的map对象,for-each循环将抛出NullPointerException,因此在遍历前你总是应该检查是否为空引用。 方法二:在for-each循环中遍历keys或values 如果只需要map中的键或者值,你可以通过keySet或values来实现遍历

mybatis XML中 遍历map写法

匿名 (未验证) 提交于 2019-12-02 20:41:15
<select id="selectMapTest" parameterType="java.util.HashMap" resultMap="BaseResultMap"> <foreach collection="map1" index="key" item="ent" separator="union"> SELECT * FROM User where username=#{key} and userpass in <foreach collection="ent" item="id" separator="," open="(" close=")"> #{id} </foreach> </foreach> </select>  对应的mapper中是: //map测试List<User> selectMapTest(@Param("map1") Map<String,List<Integer>> ma1);注意:foreach标签中的index就是map的key值 文章来源: mybatis XML中 遍历map写法

LinkedHashMap和HashMap的比较使用

亡梦爱人 提交于 2019-12-02 19:17:18
由于现在项目中用到了LinkedHashMap,并不是太熟悉就到网上搜了一下。 ? import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Map; public class TestLinkedHashMap { public static void main(String args[]) { System.out.println( "*************************LinkedHashMap*************" ); Map<Integer,String> map = new LinkedHashMap<Integer,String>(); map.put( 6 , "apple" ); map.put( 3 , "banana" ); map.put( 2 , "pear" ); for (Iterator it = map.keySet().iterator();it.hasNext();) { Object key = it.next(); System.out.println( key+ "=" + map.get(key)); } System.out.println( "************

js遍历json对象

旧城冷巷雨未停 提交于 2019-12-02 15:21:57
1. JSON数据 转 字符串 JSON.stringify(jsondata) 2. 字符串 转 JSON JSON.parse(str) 原生js遍历json对象 遍历json对象: 无规律: <script> var json = [   {dd:'SB',AA:'东东',re1:123},   {cccc:'dd',lk:'1qw'} ]; for(var i=0,l=json.length;i<l;i++){   for(var key in json[i]){     alert(key+':'+json[i][key]);   } } </script> 参考资料 js遍历json对象 https://www.cnblogs.com/qingqingzou-143/p/7079725.html JS 中 Map 与 JSON 转换 https://blog.csdn.net/jiangyu1013/article/details/86293815 来源: https://blog.csdn.net/GoOnDrift/article/details/102779260

Java中遍历HashMap方式

浪尽此生 提交于 2019-12-02 14:34:22
本教程将为你展示Java中HashMap的几种典型遍历方式。 如果你使用Java8,由于该版本JDK支持lambda表达式,可以采用第5种方式来遍历。 如果你想使用泛型,可以参考方法3。如果你使用旧版JDK不支持泛型可以参考方法4。 1、 通过ForEach循环进行遍历 mport java.io.IOException; import java.util.HashMap; import java.util.Map; public class Test { public static void main(String[] args) throws IOException { Map<Integer, Integer> map = new HashMap<Integer, Integer>(); map.put(1, 10); map.put(2, 20); // Iterating entries using a For Each loop for (Map.Entry<Integer, Integer> entry : map.entrySet()) { System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue()); } } } 2、 ForEach迭代键值对方式

java遍历map的四种方式

只愿长相守 提交于 2019-12-02 05:38:38
public static void main(String[] args) { // 遍历Map的4中方法 Map<Integer, Integer> map = new HashMap<Integer, Integer>(); map.put(1, 2); // 1. entrySet遍历,键和值都需要时使用(最常用) for (Map.Entry<Integer, Integer> entry : map.entrySet()) { System.out.println("key = " + entry.getKey() + ", value = " + entry.getValue()); } // 2. 通过keySet或values来实现遍历,性能略低于第一种方式 // 遍历map中的键 -- keySet for (Integer key : map.keySet()) { System.out.println("key = " + key); } // 遍历map中的值 -- values for (Integer value : map.values()) { System.out.println("key = " + value); } // 3. 使用Iterator遍历(不常用) Iterator<Map.Entry<Integer, Integer>>