java实现自己的单链表、双链表、Map存储
HashSet、TreeSet ArrayList、LinkList、Vector,TreeMap、HashMap、HashTable
ArrayList:底层是数组
Vector:是集合,也是数组,同步的,vector其实是一个线程安全的ArrayList
LinkList:node,指定next,链表结构
HashSet:Set<String> set = new HashSet<String>();会创建一个hashmap,只不过把add()存放到hashmap
的key中
TreeSet:Set<String> set = new TreeSet<String>();会创建一个TreeMap,也会put到key中
HashMap:是双链表,通过 hashcode/16,默认数组长度是16,所以是无序的
HashTable:和HashMap一样,只不过线程安全
TreeMap:是通过 Comparator 比较器,比较顺序,所以是有序的
transient:不被序列化的
volatile:可见性,但线程不安全