List,Set,Map存取元素各有什么特点?hashMap、hashTable的区别?Arraylist和linkedList的区别?

    List,Set,Map存取元素各有什么特点?

1.存放

(1)List存放元素是有序,可重复

(2)Set存放元素无序,不可重复

(3)Map元素键值对形式存放,键无序不可重复,值可重复

2.取出

(1)List取出元素for循环,foreach循环,Iterator迭代器迭代

(2)Set取出元素foreach循环,Iterator迭代器迭代

(3)Map取出元素需转换为Set,然后进行Iterator迭代器迭代,或转换为Entry对象进行Iterator迭代器迭代

   hashMap、hashTable的区别?

1.hashMap是线程不安全的,hashTable是线程安全的,性能要低

2.hashMap允许键值都为空,只允许有一条记录的键为空,值可以多个;hashTable不允许建为空和值为空

    Arraylist和linkedList的区别?

1.Arraylist使用数组实现的,linkedlist使用链表实现的

2.查询、修改Arraylist比较快,因为linkedlist要移动指针

3.添加、删除linkedList要快,因为Arraylist要移动数据


   线程安全:Vector HashTable  StringBuffer

线程不安全:ArrayList HashMap StringBuilder


猜你喜欢

转载自blog.csdn.net/qq_31047245/article/details/80263816