Java的数组集合概括

Java的数组集合概括

Collection

   1List(存储有序,有索引,可以重复)

           1.1ArrayList

                       底层是数组实现的,线程不安全,查找和修改快,增删比较慢

           1.2LinkedList

                       底层是链表实现的,线程不安全,增删比较快,查找和修改计较慢

           1.3Vector

                       底层是数组实现的,线程是安全的,无论增删改查都比较慢

             

结论:

              如果查找和修改多,用ArrayLIst

              如果增和删多,用LinkedList

              如果都多,用ArrayList

   2Set(存取无序,无索引,不可以重复)

           2.1HashSet

                       底层是哈希算法实现的

                  LinkedHashSet

                                 底层是链表实现的,但是也是可以保证元素唯一,和HashSet原理一样

           2.2TreeSet

                       底层是二叉树算法实现

 

 

              结论:一般在开发的时候不需要对存储的元素排序,所以在开发的时候大多用HashSetHashSet的效率比较高

              TreeSet在面试的时候比较多

 

3Map

        3.1HashMap

                       底层是哈希算法,针对键

                  3.1.1LinkedHashMap

                                 底层是链表,针对键

           3.2TreeMap

底层是二叉树算法,针对键

 

 

结论:

              开发中用HashMap比较多,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值