zoukankan      html  css  js  c++  java
  • list与Set、Map区别及适用场景

    1、List,Set都是继承自Collection接口,Map则不是


    2、List特点:元素有放入顺序,元素可重复 ,Set特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉,(注意:元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决定的,其位置其实是固定的,加入Set 的Object必须定义equals()方法 ,另外list支持for循环,也就是通过下标来遍历,也可以用迭代器,但是set只能用迭代,因为他无序,无法用下标来取得想要的值。) 
     
    3.Set和List对比: 
    Set:检索元素效率低下,删除和插入效率高,插入和删除不会引起元素位置改变。 
    List:和数组类似,List可以动态增长,查找元素效率高,插入删除元素效率低,因为会引起其他元素位置改变。 
     
    4.Map适合储存键值对的数据
     
    5.线程安全集合类与非线程安全集合类 

    LinkedList、ArrayList、HashSet是非线程安全的,Vector是线程安全的;
    HashMap是非线程安全的,HashTable是线程安全的;
    StringBuilder是非线程安全的,StringBuffer是线程安全的。

     
    参考:https://blog.csdn.net/qq_22118507/article/details/51576319

  • 相关阅读:
    20161203
    20161201
    20161128课堂笔记
    数组排序 (选择排序、冒泡排序、插入排序、希尔排序)
    编一个多用户登陆程序
    20161115课堂笔记
    20161114课堂笔记
    20161111课堂笔记
    面试常见问题
    java 基础第一周
  • 原文地址:https://www.cnblogs.com/yingyigongzi/p/9259348.html
Copyright © 2011-2022 走看看