Java——集合经典面试题
- List与Set、map的区别。
List:
1.可以允许重复的对象。
2.可以插入多个null元素。
3.是一个有序容器,保持了每个元素的插入顺序,输出的顺序就是插入的顺序。
4.常用的实现类有 ArrayList、LinkedList 和 Vector。ArrayList 最为流行,它提供了使用索引的随意访问,而 LinkedList 则对于经常需要从 List 中添加或删除元素的场合更为合 适。
Set:
1.不允许重复对象
2. 无序容器,你无法保证每个元素的存储顺序,TreeSet通过 Comparator 或者 Comparable 维护了一个排序顺序。
3. 只允许一个 null 元素
4.Set 接口最流行的几个实现类是 HashSet、LinkedHashSet 以及 TreeSet。最流行的是基于 HashMap 实现的 HashSet;TreeSet 还实现了 SortedSet 接口,因此 TreeSet 是一个根据其 compare() 和 compareTo() 的定义进行排序的有序容器
Map:
1.Map不是collection的子接口或者实现类。Map是一个接口。
2.Map 的 每个 Entry 都持有两个对象,也就是一个键一个值,Map 可能会持有相同的值对象但键对象必须是唯一的。
3. TreeMap 也通过 Comparator 或者 Comparable 维护了一个排序顺序。
4. Map 里你可以拥有随意个 null 值但最多只能有一个 null 键。5.Map 接口最流行的几个实现类是 HashMap、LinkedHashMap、Hashtable 和 TreeMap。(HashMap、TreeMap最常用)
/
- LinkedList与ArrayList有区别?
1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。(LinkedList是双向链表,有next也有previous)
2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。
3.对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。
转载于:https://www.cnblogs.com/FlashBear/p/9558032.html
Java——集合经典面试题相关推荐
- 50道Java集合经典面试题
1. Arraylist与LinkedList区别 可以从它们的底层数据结构.效率.开销进行阐述哈 ArrayList是数组的数据结构,LinkedList是链表的数据结构. 随机访问的时候,Arra ...
- 50道Java集合经典面试题(收藏版)
前言 来了来了,50道Java集合面试题也来啦~ 已经上传github: https://github.com/whx123/JavaHome 1. Arraylist与LinkedList区别 可以 ...
- Java 集合经典面试题。少侠,我看你骨骼惊奇,是难得的代码奇才,来看了我的博客那岂不是如虎添翼?
List 为什么 arraylist 不安全? 我们查看源码发现 arraylist 的 CRUD 操作,并没有涉及到锁之类的东西.底层是数组,初始大小为 10.插入时会判断数组容量是否足够,不够的话 ...
- 002 Java集合泛型面试题
Java集合/泛型面试题 1 ArrayList和linkedList的区别 ArrayList: 可以看作是能够自动增长容量的数组 ArrayList底层的实现是Array, 数组扩容实现 Arra ...
- java 1.8有没有jshell_收藏了800道Java后端经典面试题,分享给大家,希望你找到自己理想的Offer呀~...
前言 在茫茫的互联网海洋中寻寻觅觅,我收藏了800+道Java经典面试题,分享给你们.建议大家收藏起来,在茶余饭后拿出来读一读,以备未雨绸缪之需.另外,面试题答案的话,我打算后面慢慢完善在github ...
- 收藏了800道Java后端经典面试题,共享给大家
在茫茫的互联网海洋中寻寻觅觅,我收藏了800+道Java经典面试题,共享给你们.建议大家收藏起来,在茶余饭后拿出来读一读,以备未雨绸缪之需.另外,面试题答案的话,我打算后面慢慢完善在github, 希 ...
- 各大厂800道Java后端经典面试题合集
前言 在茫茫的互联网海洋中寻寻觅觅,我收藏了800+道Java经典面试题,分享给你们.建议大家收藏起来,在茶余饭后拿出来读一读,以备未雨绸缪之需.另外,面试题答案的话,可以私信我, 希望大家都能找到自 ...
- 800道Java后端经典面试题,希望你找到自己理想的Offer呀~
Java 基础 Java 集合 Java 并发 && 多线程 JVM 篇 数据库 缓存/Redis 计算机网络 消息队列 mybatis 操作系统 Spring Netty/tomca ...
- 收藏了800道Java后端经典面试题,分享给大家,希望你找到自己理想的Offer呀~
在茫茫的互联网海洋中寻寻觅觅,我收藏了800+道Java经典面试题,分享给你们.建议大家收藏起来,在茶余饭后拿出来读一读,以备未雨绸缪之需.另外,面试题答案的话,我打算后面慢慢完善在github, 希 ...
最新文章
- 在datagridview里添加自定义控件列
- PHP不同域名cookie共享(单点登录实现原理)
- 使用Spring Data Neo4j进行领域建模
- 谷歌地图VS苹果地图:大数据领域竞争
- python3.6串口编程实例_使用python3实现操作串口详解
- 【opencv学习】透视变换矩阵
- java学习_5_23
- .NET平台4.0 发布网站流程及出错总结
- Java springcloud B2B2C o2o多用户商城 springcloud架构
- 关键词组合工具-自动关键词挖掘组成关键词软件免费
- 微信小程序测试二维码跳转链接
- 笔记-MFC更换鼠标图片
- 无线渗透(下)—企业级WPA破解
- 【Luogu】P8195 小智的疑惑
- linux内核协议栈 TCP选项之SACK选项的接收Ⅰ
- Kubernetes(七)Pod进阶之Downward API和PodPreset
- 贵州学计算机,在贵州省计算机学校学习计算机专业如何?
- 用python画地球_如何用PYTHON程序模拟一个太阳系?
- 智牛股_第4章_Nacos+Ceph分布式存储+Netty通讯
- VS2015+C#实现倒计时小程序
热门文章
- 关于 RGB 的颜色认知
- CSS 魔法系列:纯 CSS 绘制各种图形《系列五》
- Mr.J--俄罗斯方块实现(框架)
- Leetcode-5148 Binary Tree Coloring Game(二叉树着色游戏)
- linux phpstudy
- this.get_element .style为空或不是对象
- 是什么造就了伟大的程序员?
- IIS的Windows集成身份验证总结
- 超级菜菜鸟全程架站攻略(Mysql+Apche+PHP+Phpmyadmin+Zend,含本机安装)
- javascript实现的复制到剪贴板