首页 / JAVA / Java--SE简答题4
Java--SE简答题4
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java--SE简答题4,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1255字,纯文字阅读大概需要2分钟。
内容图文
![Java--SE简答题4](/upload/InfoBanner/zyjiaocheng/1315/455e9ad11cb2436193ef249d11f09664.jpg)
- 集合和数组的比较
答:(1)相同点:都是数据的容器,在数组或集合中都可以存储多个数据
(2)不同点:A)数组中的元素都是相同的类型(基本类型和引用类型);集合中的元素可以是任意类型(但只可以存引用类型)
B)长度:数组是定长;集合长度可以修改
C)效率方面数组更高
- 简述List、Set、Collection、Map的区别和联系。
答:(1)Collection接口存储一组不唯一,无序的对象
(2)List接口存储一组不唯一,有序(插入顺序)的对象
(3)Set接口存储一组唯一,无序的对象
(4)Map接口存储一组键值对,提供key到value的映射。Key无序,唯一;value可以重复。如果只使用key存储,不使用value那就是Set
- ArrayList和LinkedList的区别和联系。它们的底层分别是用什么实现的?
答:(1)ArrayList:
a)分配了连续的空间,是长度可变的数组
b)优点:遍历 随机访问元素效率高
c)缺点:添加删除元素要移动大量元素效率低,按照内容查询效率低
d)使用无参数构造方法创建ArrayList对象时,默认底层数组长度是0.第一次添加元素,数组的容量为初始容量10和第一次添加元素个数的较大值
e)容量不足时进行扩容,为原来的1.5倍(增长50%),还不够的话就增长到能融入元素的最小值
f)ArrayList可以使用迭代器遍历
(2)LinkedList:
A) 采用双相链表存储方式
B) 优点:插入删除效率高(前提是必须先低效率查询。如果删除发生在头尾可以减少查询次数)
C) 缺点:遍历和随机访问元素效率低
D) LinkedList实现了Deque接口,可以当做队列和栈使用
(3)使用场景
大量的根据索引查询的操作,大量的遍历操作(按照索引0--n-1逐个查询一般),建议使用ArrayList
* 如果存在较多的添加、删除操作,建议使用LinkedList
* 建议 * List<Integer> list = new ArrayList<Integer>();
* 不建议 * ArrayList<Integer> list = new ArrayList<Integer>();
- 每个对象都有一个哈希码吗?哈希码是根据什么生成的?会不会重复?
答:是的;Object类当中的hashcode()进行获取;同一个对象的哈希码是不会重复的
- HashSet采用了哈希表作为存储结构,请说明哈希表的特点和实现原理。
提示:结合Object类的hashCode()和equals()说明其原理
- Vector和ArrayList的区别和联系。
- 请你简述HashMap和Hashtable的区别?
- 使用泛型有什么好处?
- Collection和Collections有什么区别?
原文:https://www.cnblogs.com/9797ch/p/11839121.html
内容总结
以上是互联网集市为您收集整理的Java--SE简答题4全部内容,希望文章能够帮你解决Java--SE简答题4所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。