zoukankan      html  css  js  c++  java
  • 数据结构和Java集合

    list接口,可重复,有序的。list有arrayList,因为是数组结构,适合用在数据的查询,linkedList,因为是链表结构,适合用在增删操作。数组如果增删的话,需要后面的元素都往前或者往后移动,如果是在第一个元素做增删,后面的元素移动量就很大,效率不高。链表如果做查询,需要从第一个元素开始到最后一个,如果查询的元素在最后一个,查询量也很大,效率不高。

    set接口,不可重复,无序。treeSet是树数据结构,是有序的,所以treeSet解决了set不能排序的弊端。hashset的数据结构是hash值数据结构,所以是唯一性的。linkedhashset。

    map接口,hashtable,同步的不允许null。

         hashmap,不同步,允许key和value值为空。

            treemap,不同步,按key排序,不允许null。

    HashMap和ConCurrentHashMap的区别是:后者相当于是把一个Map分成16个HashTable,16个段,对每个段进行加锁,根据要传入key的hash值决定要放入的是哪个hashTable。

    LinkedHashSet的内部实现其实就是LinkedHashmap,可以保证数据的有序性,就是存入和取出的顺序是一样的。

    LinkedHashMap和HashMap的区别:LinkedHashMap也是一个HashMap,但是内部维持了一个双向链表,可以保持顺序,进入出取出的顺序一样。

  • 相关阅读:
    laravel前后端分离分页查询
    swagger-open api 手动编写规范
    linux开启端口命令
    docker容器的基本使用
    centos更换阿里云的yum源
    VS中生成pdf
    代码整洁之道阅读笔记-02
    周总结
    Mongo的基本操作
    Redis的基本操作
  • 原文地址:https://www.cnblogs.com/3chi/p/7470071.html
Copyright © 2011-2022 走看看