Java教程

java基础day3容器-Interview

本文主要是介绍java基础day3容器-Interview,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

新年快乐啊

1.Java 容器都有哪些?

16. Java 容器分为 Collection 和 Map 两大类,其下又有很多子类,如下所示:
Collection
List
ArrayList
LinkedList
Vector
Stack
Set
HashSet
LinkedHashSet
TreeSet
Map
HashMap
LinkedHashMap
TreeMap
ConcurrentHashMap
Hashtable

2.Collection 和 Collections 有什么区别?

Collection 是一个集合接口,它提供了对集合对象进行基本操作的通用接口方法,所有集合都是它的子类,比如 List、Set 等。
Collections 是一个包装类,包含了很多静态方法,不能被实例化,就像一个工具类,比如提供的排序方法: Collections. sort(list)。

3.List、Set、Map 之间的区别是什么?

List
    有序且重复
Set
    无序且不可重复
Map
    key唯一,值可以不唯一

4.HashMap 和 Hashtable 有什么区别?

存储:HashMap 允许 key 和 value 为 null,而 Hashtable 不允许。
线程安全:Hashtable 是线程安全的,而 HashMap 是非线程安全的。
推荐使用:在 Hashtable 的类注释可以看到,Hashtable 是保留类不建议使用,推荐在单线程环境下使用 HashMap 替代,如果需要多线程使用则用 ConcurrentHashMap 替代。

5.如何决定使用 HashMap 还是 TreeMap?

对于在 Map 中插入、删除、定位一个元素这类操作,HashMap 是最好的选择,因为相对而言 HashMap 的插入会更快,但如果你要对一个 key 集合进行有序的遍历,那 TreeMap 是更好的选择。
这篇关于java基础day3容器-Interview的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!