Java集合常见的面试题

首先我们要想更快的去了解和认识Java集合的话,我们可以通过一张思维导图去认识一下Java集合的框架。

 

其次你们也可以看我自己写的关于Java集合面试问题和解决方案。

1,collection是Java.util包下的接口类,它继承了Iterable接口,实现Iterable接口的类可以增强for循环,Iterable接口必须提供一个名为Iterator()的方法,该方法返回值为Iterator.

collection接口有哪些方法列表?

有size():,isEmpty():,contains(Object):,clear():,add(E):,remove(Object):,Itertor():

2,conllection继承List,Set,Queue,

①List的特点:有序,可以添加重复的元素

ArrayList的优点:查询速度快

LinkedList的优点:增删改速度快

②Set的特点:无序,不保存重复的元素

HashSet:速度快,无序,集合元素为null

TreeSet:有序(升序)

LinkedList:有序(按顺序)

④Queue的特点:先进先出

如图所示:

3,Collection接口的remove()方法和Iterator接口的remove()的方法区别?

①性能方面

 collection的remove方法必须先找出被删除的项,效率低,Iterator的remove方法结合next()方法使用,效率高

②容错方面

在Iterator遍历时,要是使用Collection的remove就会报异常,要想不报错那Iterator内部的对象个数和原来的集合中对象的个数会保持一致。

4,HashMap和HashSet的区别

5,HashMap的实现原理

主要记住Bucket

6,List,Set,Map之间的区别

list和set都继承Collection,但是map不是Collection的子接口

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值