list set map

list

  • ArrayList

     new 的时候是个 null 数组,加第一个数据的时候数组大小变成10 ,放第11个数据的时候按1.5倍扩	·		容,如果初始化为6,插入第7个元素的时候扩容为9
    
  • linkedList

     	没有容量一说
    
  • Vector

     	Vector和ArrayList 差不多,不过是按照2倍扩容
    

set

  • hashset

     底层实现hashMap
    
  • linkedHashset

     底层是linkedHashMap
    

map

  • hashmap
    可以有一个key为空 hashcode() tostring()
    在这里插入图片描述 修正上图一处:TREEIFY_THRESHOLD = 8,这个常量就当数组大于等于默认值,是转化为红黑 树一个条件。>=8 >=64 超过了临界值 才2倍扩容在这里插入图片描述

  • LinkedHashMap

    LinkedHashMap 是 HashMap子类 可以有一个key为空
    维护的是 entry 双向链表 类型的table 扩容和树化和hash一样

    static class Entry<K,V> extends HashMap.Node<K,V> {
    	      Entry<K,V> before, after;
    	        Entry(int hash, K key, V value, Node<K,V> next) {
    	            super(hash, key, value, next);
    	        }
        }
    
  • Hashtable

     key val 都不能为空
     底层和hashmap差不多,方法是同步的,是线程安全的
    
  • Properties
    用来读取文件

TreeSet只是TreeMap的一个马甲 红黑树
HashMap:适用于Map插入,删除,定位元素;
TreeMap:适用于按自然顺序或自定义顺序遍历键(key);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值