1 | Interface Collection<E> |
List
- 有序
- 可重复
- 可通过index操作元素
Set
- 无序或有序
- 数据唯一不重复
- 无索引
Iterable
实现 Interable ,所有 Collection 都已实现
可以使用 foreach 遍历。
boolean hasNext()
E next()
void remove()
method
boolean add(E e)
void clear()
boolean remove(Object o)
boolean contains(Object o)
底层依赖 equals ,自己实现需重写 equals
boolean isEmpty()
int size()
遍历
通过 Iterator 。List 也可通过索引
- Hashmap底层(数组+链表+红黑树)hashmap为什么线程不安全,如何保证线程安全,就扯到concurrenthashmap hashmap底层实现 多线程会出现什么情况 扩容机制是什么为什么会死锁 如何解决碰撞 Jdk 1.8的优化。为什么使用红黑树,它是如何做到效率优化的? hashmap了解不,原理是什么,位图了解不,跳跃表了解不,红黑树了解不,红黑树插入过程,B+树了解不,B+树特点和插入过程,邻接表和邻接矩阵区别,分别在什么地方用到,
插入和查询的流程。 - concurrenthashmap1.7和1.8的区别;concurrenthashmap说说,它是如何保证线程安全的?jdk1.7的hashentry和segment锁。具体说说segment锁?能讲下ConcurrentHashMap的实现原理么 JDK7或者8都行
- 常用集合类 实现类
- list和set区别(重复/不重复)
- set,list,map(线程安全的map,map怎么实现之类的)
- 红黑树介绍一下,跟平衡二叉树比较一下,红黑树有哪些应用场景
- 你常用的数据结构有哪些?
- 红黑树的特点,AVL树
- 一致性哈希函数以及hashmap的put方法
- 数组、二叉搜索树、B树、B+树
- 堆和栈。堆、栈
- 二叉树的最大节点个数;2^n-1;