zoukankan      html  css  js  c++  java
  • HashMap和LinkedHashMap的区别

    HashMap,LinkedHashMap,TreeMap都属于Map

    Map 主要用于存储键(key)值(value)对,根据键得到值,因此键不允许键重复,但允许值重复。

    HashMap 
    是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度。HashMap最多只允许一条记录的键为Null;允许多条记录的值为 Null;HashMap不支持线程的同步,即任一时刻可以有多个线程同时写HashMap;可能会导致数据的不一致。如果需要同步,可以用 Collections的synchronizedMap方法使HashMap具有同步的能力。

                                                                                        
    LinkedHashMap
    LinkedHashMap也是一个HashMap,但是内部维持了一个双向链表,可以保持顺序

    TreeMap 可以用于排序

    HashMap的例子
    public static void main(String[] args) {  

          Map<String, String> map = new HashMap<String, String>(); 

          map.put("a3", "aa");

          map.put("a2", "bb"); 

          map.put("b1", "cc");

          for (Iterator iterator = map.values().iterator(); iterator.hasNext();)     {

                String name = (String) iterator.next(); 

                System.out.println(name);   

         }  

      }

    输出:bbccaa

    LinkedHashMap例子:

       

    public static void main(String[] args) {   

         Map<String, String> map = new LinkedHashMap<String, String>();

         map.put("a3", "aa");       

         map.put("a2", "bb"); 

         map.put("b1", "cc"); 

         for (Iterator iterator = map.values().iterator(); iterator.hasNext();) {           

                 String name = (String) iterator.next(); 

                 System.out.println(name);     

         }

    }


    输出:
    aa
    bb
    cc

    总结归纳为:linkedMap在于存储数据你想保持进入的顺序与被取出的顺序一致的话,优先考虑LinkedMap,hashMap键只能允许为一条为空,value可以允许为多条为空,键唯一,但值可以多个。

    经本人测试linkedMap键和值都不可以为空

  • 相关阅读:
    CATransition
    OC中只有重写没有重载
    OC内存管理
    NSNotification
    关于一个小应用软件的思考
    tableView主从表在storyboard连线是 Selcetion Segue和Accessory Action的区别
    关于ios8模拟器不能输入中文问题以及软键盘不弹出问题
    UINavigation Bar中使用UIcollectionView,在UIcollectionView的顶端和低端出现空白的问题
    升级到Xcode6.2后 免证书真机调试出错的问题
    让UITableView 的 headerView跟随 cell一起滚动,tableHeaderView
  • 原文地址:https://www.cnblogs.com/xwgcxk/p/9087054.html
Copyright © 2011-2022 走看看