面试官上来第一句,又是学Java的1、Java锁有哪些2、可重入锁应用在什么场景3、什么数据结构可以实现二分查找,答的一堆有序表和平衡树还有跳表,他说数组不也可以吗,你归纳下有什么特点4、HashMap查找过程5、如果给你一个HashMap,并发场景下get和put要加锁吗(他说就如果加锁也只加简单的互斥锁),为什么6、如果HashMap桶中只有一个元素,会走equals判断吗,回答会,为什么,举个具体例子7、ReentrantLock Fair和Unfair有什么区别,为什么Fair效率低,Unfair效率高8、Redis集群了解吗,怎么确定数据应该放在哪个槽上的,说详细点9、怎么保证Redis和数据库数据一致性的,具体怎么做,如果数据长时间不一致是什么原因(不考虑网络问题、机器问题)10、数据库的四个特性,都解释下11、你项目上写的RocketMQ延时消息实现库存回滚怎么做的,业务场景说详细点12、你项目上的ElasticSearch是用来干嘛的13、反问,有没有双休,答有