• 集合


    数组的缺点,长度不可变,类型单一

             数组的效率优于集合

    Java的集合框架是有多个类跟接口组成,

    集合中不能放基本数据类型

    Java1.4以后添加的新特性 自动装箱、自动拆箱,所以看起来集合可以放基本数据类型

             集合框架提供的接口

             Collection

                       放单一值的元素

                                每一个元素只能有一个值

                      

                       Collection的接口

                      

                       List  

                                有序的

                                         放进list的顺序就是当中值的排放顺序

                                                   可重复

                                         实现类

                                                   ArrayList使用最频繁的集合 出现的版本要晚(JDK 1.2出现的集合类)

                                                            线程不安全(效率高于vector)

                                                            数组结构

    Vector(JDK 1.0出现的集合类)线程安全

    LinkedList (链表式结构)

    每个元素中都存放当前元素的前一个元素的地址以及后一个元素的地址

    添加删除

             前面添加或者删除数据,linkedList的效率高于arrayList

             后面添加或者删除数据 arrayList的效率高于linkedList(意义不大)

    查询

             ArrayList比linkedList 效率高

                       Set

                                无序(排放方式放进去的顺序无关,)

                                         不可重复

                                实现类(内部顺序是按照hash值排序)

                                                   HashSet(效率比较高)

                                                            Iteratot (迭代器)循环方法

                                                  

                                                           HasNext 指向下一个

                                                            next 获取当前值

                                                  

                                                   treeSet

                                                            hashset 不能自定义排序

                                                            treeset 可以自定义排序

                                                            hashset 效率高于treeset

                                                  

             Map

                       键值对

                                每一个元素都有两个值,一个键(不能重复) 一个值 键值对应

                       实现类

                       HashMap

                                中的键是根据hash值排列的

                                Hashmap的范型需要穿两个值 <key的类型,要存储的类型>

                                可以通过keySet(获取全部键,通过建进行循环)

                       TreeMap

                                HashMap不能自定义排序

                                TreeMap可以自定义排序 (键的排序)

                                HashMap效率高于TreeMap

                       HashTable

                                1.HashMap(jdk1.2出现的集合类)要晚于Hashtable(jdk1.0出现的集合类)

                                2.线程安全hashtable 线程不安全hashMap

                                3.hashTable 不允许存放空(null)键空值(null)hashMap允许

  • 相关阅读:
    redhat6.4 数据包无法到达
    hibernate-Table 'XXX.XXX' doesn't exist
    LeetCode 之 TwoSum
    vim 中的常用编辑
    linux sed 批量替换多个文件中的字符串
    RedHat 6.4企业版利用iso镜像做本地yum源
    win7 vmware虚拟机上网设置
    virtualbox ubuntu下ssh连接
    Source Insight 插件
    非递归排序
  • 原文地址:https://www.cnblogs.com/-try/p/3700295.html
Copyright © 2020-2023  润新知