String判等。
String类对equals()方法进行了重写,比较的是字符串的内容是否相同。
java集合的类层次关系,各种集合容器简单介绍一下。
Collection接口下有List和Set子接口。
List接口下有ArrayList、LinkedList、Vector子类
Set接口下有HashSet、TreeSet
List:元素是有序的,元素可以重复
Set:元素是无序的,元素不可以重复
ArrayList:底层数据结构使用的是数组结构。特点:查询速度很快,但是增删稍慢。线程不同步。
LinkedList:底层使用链表数据结构。特点:增删速度很快,查询稍慢。
Vector:底层是数组数据结构。线程同步。被ArrayList替代了。
HashSet:数据结构是哈希表。线程是非同步的。保证元素唯一性的原理:判断元素的hashCode值
是否相同。如果相同还会继续判断元素的equals方法,是否为true。
TreeSet:可以对Set集合中的元素进行排序。底层数据结构是二叉树,保证元素唯一性的依据:
compareTo方法return 0
TreeSet排序的第一种方式:让元素自身具备比较性,元素需要实现Comparable接口,覆盖compareTo方法。
第二种方式:
当元素自身不具备比较性,或者具备的比较性不是所需要的。这时需要让容器自身具备比较性。
定义了比较器,将比较器对象作为参数传递给TreeSet集合的构造函数。
当两种排序都存在时,以比较器为主。
定义一个类,实现Comparator接口,覆盖compare方法。
给出2个kv实例,描述hashmap.put()过程。
任何自定义类都能放入hashmap吗?有什么要求?如何实现?
常见的索引结构。
mysql主键和其他索引的区别。
谈一谈你对微服务的理解。
Spring的AOP。
***用来做什么?哪些场景需要用***?
什么是java内存泄漏?举几个例子。
static方法在哪个内存区域。
写代码,使2个线程出现死锁情况。
写代码,判断链表是否有环。
集群如何管理session。