???????????????????????м?????????????????????????????????顣???????”???Java”??????????????????????
????????????У????????????????
????List
????ArrayList

????????????????????????????????????????????????????50%????????System.arraycopy()??????μ????飬??????????????С??????????????β?????????????С?10?????顣
???????????±???????–get(i)/set(i??e) ??????????????????????????
??????????????β???????–add(e)??????????????????±??????????–add(i??e)?? remove(i)?? remove(e)???????System.arraycopy()????????????????????????????????????????
????LinkedList
????????????????????????????????????????????????????????????????????????????
???????±???????–get(i)/set(i??e) ??????????????????????λ(???i>?????С?????????β????)??
??????????????????????????????????????????????????????????????±??????λ????????????????????–add()?? addFirst()??removeLast()????iterator()???remove()??????????????
????CopyOnWriteArrayList
?????????????ArrayList????CopyOnWrite???????????????????????????????????????????????????顣
???????????????????????????????????????д????ж???????????????????????????????д????????????????????????????????????Collections.synchronizedList(list)???????в????????????????????????á?
??????????addIfAbsent(e)???????????????????????????????????????????????á?
????????
????????????????????????±?–contains(e)?? indexOf(e)?? remove(e) ????????????????б??????????????????á?
??????а??????????SortedList?????????????????????????ConcurrentLinkedList?????????Set??Queue?е??????????????ЩList???е??????
????Map
????HashMap

??????Entry[]??????????????飬??Key??????????????С?????????±?
?????????????????????Key?????????(???????1??17??16??????????????)??Entry?????next?????????Entry???????????????????Entry??next?????????Entry??
????????????17??key??????λ????????????????????????????????????????????key???
??????Entry?????????????75%?(?????????????????????75%????????????)??????????????飬?????·????????????Entry??????????????и???????
????????λ????(hash & (arrayLength-1))???????????????С?????2??N?η??? ?????????????????17????32????????η??????????????16??
????iterator()????????????????????????????????
??????JDK8??????????8???????????????Entry???????????????????????????????????Key?????????
????LinkedHashMap
???????HashMap????????????????????????????????????iterator()???Entry??????????????(??????2??? ???????accessOrder?????true???????ж?д???????)??
?????????????Entry????????????before/after????????????????Header Entry??????????????ж?д??????????????????Entry??before/after???????????????????????????
????TreeMap
??????????????????????????????????iterator()???Key?????????????Comparable????Key??????????????????Comparator??????????????????????/???????????????HashMap???
???????SortedMap??????firstKey()??lastKey()????С??key????sub(fromKey?? toKey)?? tailMap(fromKey)???Map?????Ρ?
????ConcurrentHashMap
?????????????HashMap?????16??д??(???????????)????Ч?????????????????????ж?????
??????????Segment[]??Segment?????????????飬???Segment???????Key????????????Segment????????????????????
???????ConcurrentMap??????putIfAbsent(key??value)??????replace(key??value)????????CAS??replace(key?? oldValue?? newValue)??
??????ж????????put/remove?????????????(????put??????????????/Entry ??????????)???????????????????????????м?????
????ConcurrentSkipListMap
????JDK6??????????????SortedMap????SkipList????SkipList???????????????????????????е??????????????????????????Concurrent????????????????????CAS?????????????????????к??????????
????????????????size()?????????????????????
????????
????????null??HashMap??LinkedHashMap????????TreeMap???????Comparator?key?????null??ConcurrentHashMap??JDK7??value?????null(??????????)??JDK8??key??value???????null??ConcurrentSkipListMap??????JDK??key??value???????null??
????Set
????Set????????????????Map?????? ???Map???KeySet?????Set????value????????????????Object??Set??????????????Щ???Map??????????
????HashSet???????HashMap??
????LinkedHashSet???????LinkedHashMap??
????TreeSet???????TreeMap??SortedSet??
????ConcurrentSkipListSet???????ConcurrentSkipListMap??????????SortedSet??
????CopyOnWriteArraySet???????CopyOnWriteArrayList??????????Set????????addIfAbsent()??????????????????????÷?????????????
?????????????????ConcurrentHashSet???????????????????ConcurrentHashMap?????????JDK???????Jetty????????????Guava???????java.util.Collections.newSetFromMap(new ConcurrentHashMap()) ????
????Queue
????Queue????????????List????????????????????????????
????–???????–
????LinkedList
?????????????????????LinkedList????List?????Queue????????????????null??Queue??
????ArrayDeque
????????????????????Queue????С??2????????????16??
????????????????????β?????????????FIFO????????????????????????????????飺?ж????β?????±???????????????±??????????????????????????????β???????????????????[0](??????????±????0???????????????????п?λ)??????β?±????0????????????????????????[1]????β?±????1???????β???±??????????????????п??????????????????????????