Java八股文总结四

 集合类

一、什么是集合以及使用的好处?Java有哪些常见的集合类?

集合概念

  • 集合就是一个放数据的容器,准确的说是放数据对象引用的容器

  • 集合类存放的都是对象的引用,而不是对象的本身

  • 集合类型主要有3种:set(集)、list(列表)和map(映射)。

集合类的特点有三个:
1、集合类这种框架是高性能的。对基本类集(动态数组,链接表,树和散列表)的实现是高效率的。一般人很少去改动这些已经很成熟并且高效的APl;

2、集合类允许不同类型的集合以相同的方式和高度互操作方式工作;

3、集合类容易扩展和修改,可以很容易地稍加改造就能满足自己的数据结构需求。

集合类带来的好处:
(1)降低编程难度:在编程中会经常需要链表、向量等集合类,如果自己动手写代码实现这些类,需要花费较多的时间和精力。调用Java中提供的这些接口和类,可以很容易的处理数据。

(2)提升程序的运行速度和质量:Java提供的集合类具有较高的质量,运行时速度也较快。使用这些集合类提供的数据结构,程序员可以从“重复造轮子”中解脱出来,将精力专注于提升程序的质量和性能。

(3)无需再学习新的APl:借助泛型,只要了解了这些类的使用方法,就可以将它们应用到很多数据类型中。如果知道了LinkedList的使用方法,也会知道LinkedList怎么用,则无需为每一种数据类型学习不同的API。

(4)增加代码重用性:也是借助泛型,就算对集合类中的元素类型进行了修改,集合类相关的代码也几乎不用修改。

常用的集合类:Map接口和Collection接口是所有集合框架的父接口。

  1. Collection接口的子接口包括:Set接口和List接口
  2. Map接口的实现类主要有:HashMap、TreeMap、Hashtable、ConcurrentHashMap以及Properties等
  3. Set接口的实现类主要有:HashSet、TreeSet、LinkedHashSet等
  4. List接口的实现类主要有:ArrayList、LinkedList、Stack以及Vector等

 参考文章:JAVA集合的介绍及使用_java中集合的用法-优快云博客

 二、数组和集合的区别,集合是否可以存储NULL

 数组和集合的区别:

1.数组是大小固定的,一旦创建无法扩容;集合大小不固定,

2.数组的存放的类型只能是一种,集合存放的类型可以不是一种(不加泛型时添加的类型是Object);

3.数组是java语言中内置的数据类型,是线性排列的,执行效率或者类型检查(不懂),都是最快的.

  ArrayList就是基于数组创建的容器类.

 参考文章:数组和集合区别_集合和数组区别-优快云博客

集合是否可以存储NULL :

List中全部可以存null
    ArrayList 可以存null
    LinkedList 可以存null
Queue队列中
    只有LinkedList 可以存null  Deque是Queue的子接口
Map中
    HashMap 允许存null
    LinkedHashMap 允许存null
    TreeMap 不允许存null

    Hashtable不允许存null
Set
    HashSet、LinkedSet可以存null
    TreeSet 不允许存null

三、 ArrayList 与 LinkedList 的区别?ArrayList 和 Vector 的区别

ArrayList 与 LinkedList 的区别:

1.底层数据结构不同:ArrayList 的底层是基于数组来实现的&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值