java容器都有哪些?

什么是容器?

  1. 容器是指用以容纳物料并以壳体为主的基本装置。摘自: 百度百科
  2. java容器类类库的用途是"保存对象"。摘自: “Thinking in Java”.
  3. Java集合类是一种特别有用的工具类,可以用于存储数量不等的对象,并可以实现常用的数据结构,如栈,队列等.Java集合就像一种容器,可以把多个对象(实际上是对象的引用,但习惯上都称对象) “丢进” 该容器中. 摘自: “疯狂Java讲义”.
  4. java中的容器也叫集合,是专门用来管理对象的对象. 这个是我说的.

容器都有什么?

java中提供的容器的具体实现实现实在是太多了,能力有限,不敢一 一列举,我再这里只能简单的总结下我常用的集中容器.

大的分类:

  1. String算容器么?这个自己理解吧,底层是Char[].如果算的话,那StringBuffer和StringBuilder也应该算把.还有就是数组算容器么?这两个如果面试的时候提到的话就自己说自己的理解吧.我个人认为String就别算容器了,就能保存个char,但是数组应该算上,网上看到一篇帖子说String和数组都是容器,有点不太认同,但是也不能说全错,仁者见仁吧.
  2. 然后就是官方说到的容器了,Collection接口下的List,Set,Queue.和Map
  3. 需要注意的就是Map是独立的和Collection接口下的那几个没有任何关系.
  4. 提供个简单的类关系图,这里我们不说数组和String,简单的说下几个具体实现.
    java容器都有哪些?_第1张图片

关于容器的面试题

面试题有各种各样的问法,但是如果知道每个容器的特点,实现原理之后,我想也就可以回答上来了,下面是我整理的一些容器的特点和底层实现原理:

  1. ArrayList
    关于ArrayList的我写了一篇相对还是详细的文章,大家可以参考这种方式去实践.希望能够帮助大家掌握学习的方法,而不是当做面试题去死记硬背,真的去理解了自然就记得了. Java容器之ArrayList

  2. LinkedList
    容器这块怎么说呢,你可以理解成非常的简单,也可以搞的很复杂,简单的话说下优缺点,总结下特性就ok了,复杂的话就去搞数据结构各种情况然后对比,本来打简单总结一下,结果不知道咋想的又写了一篇 Java容器之LinkedList

  3. 这两天也是刚刚辞职,家里事情处理完了,准备去杭转转,抽时间整理下面试题,但是目前还是要以找工作为主啊,这篇博客就先这样,后面有时间的话好好的将容器这块整理一遍.

  4. Java容器之HashSet

  5. Java容器之HashMap

你可能感兴趣的:(面试,容器)