Java集合类型面试最全总结【易错,易问】

发布时间:2023-02-05 22:00

前言: 之前有介绍过在reids中的五种常用类型: string hash list set zset 五种数据类型 。今天来介绍一下关于 java中的集合类型。还会进行基础的介绍不同之处。

基础使用

一直都想记录一下也是因为在刷题过程中,也都用用到各种的栈,队列。今日打算痛定思痛记录一番:

栈 Stack

在《算法》(第四版)中对栈的基础函数有以下比较常用的:

方法 介绍
Stack() 创建一个新栈
void push(Item item ) 添加一个新的元素
Item pop() 删除最近添加的元素,将元素从栈顶取出,有返回值
boolean isEmpty() 判断栈是否已经为空
int size() 返回栈的长度

注: 关于栈的使用地方非常的多 例如对于很多的数的操作:数的前序和后序遍历,对于表达式的求解,前缀与后缀表达式都会有相对应的涉及。

队列 Queue

同上:

方法 介绍
Queue () 创建一个空队列
void enqueue(Item item) 添加一个元素到队列中
Item dequeue () 取出队列中 最早添加的元素
boolean isEmpty() 是否为空
int size() 此时队列的长度

注: 虽然对于队列来说,使用的比较少,但是基础的操作,对于树的层序遍历还是会使用到,同时对于判断平衡二叉树时候 也会使用到。

基础面试

说一说 List,Map,Set三者之前的区别

  • List:存储的元素是不唯一的(可以存储一组由多个元素引用相同的对象) ,有序,可以插入时候 插入多条的null值。
  • Set 不允许有重复的元素,不允许有多个元素应用的是相同的对象,只允许有一个null元素。
  • Map: 使用键值对进行存取,Map本身会维护Key与Value之间的关系,在理论上不同的key可以引用相同的对象,但是Key值不能够是重复的。

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号