章节七6-Map集合的区别
Posted 时光以北暮南城
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了章节七6-Map集合的区别相关的知识,希望对你有一定的参考价值。
一、通过entrySet取出Map中的元素
package ZangJie7; import java.util.HashMap; import java.util.Map; public class MapsIteration { public static void main(String[] args) { // HashMap不保证有序 Map<Integer,String> hashMap = new HashMap<Integer,String>(); hashMap.put(1,"BwM"); hashMap.put(6,"AuDi"); hashMap.put(4,"HonDo"); /* 如何取出Map中的元素? Mao中有键值对的映射关系,可以用Entery来取出集合中元素,Entery是Map集合中的方法, 这个方法返回的是Map方法中包含的映射关系的set集合,返回的是一个set集合,用高级for循环可以 遍历set集合 */ // Map集合不能直接用高级for来取出所有元素,只能通过调用他里面的方法返回set集合,然后再遍历set集合 for(Map.Entry<Integer,String> entry:hashMap.entrySet()) { // 定义一个变量来接收键值对中的键,int是键的返回值类型,类型的数据接收时就需要用相同的类型来接收 // getKey()方法用来返回键值对中的键 int key = entry.getKey(); // 返回键值对映射关系中的值 String value = entry.getValue(); System.out.println("键"+key+"值"+value); } } }
返回结果为:
二、通过keySet取出Mao集合中的值
package ZangJie7; import java.util.HashMap; import java.util.Map; public class MapsIteration { public static void main(String[] args) { // HashMap不保证有序 Map<Integer,String> hashMap = new HashMap<Integer,String>(); hashMap.put(1,"BwM"); hashMap.put(6,"AuDi"); hashMap.put(4,"HonDo"); // 通过keySet取出集合中的值: // 通过这个方法可以取出集合中所有的键,放到set中,然后用高级for循环来遍历这些键 for(Integer key:hashMap.keySet()) { // key存的是keySet()中的键,变量名就叫key,所以在下面的“.get(key)”中传的就是key,这样就能够通过键取出对应的值 String value = hashMap.get(key); System.out.println("键"+key+"值"+value); } } }
运行结果为:
三、LinkHashMap
// LinkedHashMap可以保证有序,怎么存值就怎么取值 Map<Integer,String> leHashMap = new LinkedHashMap<Integer,String>(); leHashMap.put(1,"BwM"); leHashMap.put(6,"AuDi"); leHashMap.put(4,"HonDo"); for(Integer key:leHashMap.keySet()) { // key存的是keySet()中的键,变量名就叫key,所以在下面的“.get(key)”中传的就是key,这样就能够通过键取出对应的值 String value = leHashMap.get(key); System.out.println("键"+key+"值"+value); }
运行结果为:
四、TreeMap
// TreeMap自然排序,对Map集合中的键进行排序 Map<Integer,String> tMap = new TreeMap<Integer,String>(); tMap.put(1,"BwM"); tMap.put(6,"AuDi"); tMap.put(4,"HonDo"); for(Integer key:tMap.keySet()) { // key存的是keySet()中的键,变量名就叫key,所以在下面的“.get(key)”中传的就是key,这样就能够通过键取出对应的值 String value = tMap.get(key); System.out.println("键"+key+"值"+value); }
运行结果为:
五、HashMap、LinkeHashMap、TreeMap的区别
1、HashMap数据结构是hash表结构,不保证有序,允许有空键空值
2、TreeMap自然排序方式,可以都Map集合中的键进行排序
3、LinkeHashMap怎么存就怎么取,顺序一致
以上是关于章节七6-Map集合的区别的主要内容,如果未能解决你的问题,请参考以下文章