2017-5-6关于Map集合的遍历一些记录

xiaoxiao2021-02-28  132

每次到集合这里遍历就是问题,所以开通了博客,来此记录我的成长过程。

今天看了下Map集合 ,总结了下遍历它的四种方式:

package com.sml.b_necessary; import java.util.HashMap; import java.util.Iterator; import java.util.Map; /** * 我想看看map集合到底什么鬼,以及主要方法 * * @author Administrator * */ public class MapTest { public static void main(String[] args) { // 一直以来map都是存放键值对形式,key-value // map集合存放的都必须是对象 ★ Map<String, Integer> map = new HashMap<String, Integer>(); map.put("孙明亮", 1); map.put("邓晨怡", 1); map.put("马唯", 2); map.put("马萌", 3); map.put("王倩", 4); // System.out.println(map.size()); // 遍历map集合的四种方式 // map集合是无序的★ // 1:Set<String> set = map.keySet();//得到所有key的集合 System.out.println("第一种:通过Map.keySet遍历key和value:"); for (String s : map.keySet()) { Integer i = map.get(s); int iso = i.intValue(); System.out.println(s + " \t " + iso); } System.out.println("========================================"); // 2.效率比keyset高n倍 map.entrySet() 以及遍历迭代器 iteator Iterator it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry entry = (Map.Entry) it.next(); Object key = entry.getKey(); Object value = entry.getValue(); System.out.println(key + "\t" + value); } // 3 通过map.values(),!!只能拿到值 System.out.println("========================================"); for (Integer s : map.values()) { System.out.println(s); } // 4.直接通过map.entry(); // Map.entry<Integer,String> 映射项(键-值对) 有几个方法:用上面的名字entry // entry.getKey() ;entry.getValue(); entry.setValue(); // map.entrySet() 返回此映射中包含的映射关系的 Set视图。 System.out.println("========================================"); for (Map.Entry<String, Integer> entry : map.entrySet()) { System.out.println("key值为:" + entry.getKey() + "value值为:" + entry.getValue()); } } }

转载请注明原文地址: https://www.6miu.com/read-61409.html

最新回复(0)