快手后端2面的一些问题讨论

面试中答得不好的,求解答。

1.为什么重写equal一定要重写hashcode,我把之前看过的都答上了,说我没答到点子上

2.线程池的singel创建方法,和不用线程池一个一个创建比,有什么好处

3. MVCC解决了幻读没有? 关于这个我记得有一个结论是部分解决,但是的确记不太清楚了。感觉这个问题挺高频了
我的一个笼统的理解是:快照读可以通过mvcc避免幻读;当前读的时候需要配合间隙锁

#快手##面试题目#
全部评论
1.提高存储效率,使用hashcode方法进行提前校验,可以避免每一次对比都调用equals方法,尤其是对于Hashset方法这类可能对于一个新来的数据 要比较N次(假设n个数据),如果使用hash那么定位到位置只需要进行一次比较就行,定位到如果存在hash冲突,那么就调用equals比较 2.重新equals方法后,可能会出现a.equals(b)=ture情况,但是可能之前是两个new的对象,那么这两个hashcode不相等。但是重新之后要遵循如果a.equals(b)=true 那么a.hashcode=b.hashcode,这样子就矛盾了
1 回复 分享
发布于 2020-08-10 19:56
2、线程池算是一种异步处理的方式吧,感觉可以从这个角度考虑,而且将等待处理的线程转换为阻塞队列中的Node,可以节省内存 3、RR中,幻读通过mvcc + 间隙锁来解决,但是仍然存在问题,感觉可结合MySql的可串行化考虑
点赞 回复 分享
发布于 2020-08-25 09:31
mvcc可以解决脏读和不可重复读,幻读是用间隙锁来解决的
点赞 回复 分享
发布于 2020-08-25 00:06
m
点赞 回复 分享
发布于 2020-08-24 23:57
问了这么少吗
点赞 回复 分享
发布于 2020-08-24 23:50
需要用hashcode定位到equals相同的桶,集合里用到
点赞 回复 分享
发布于 2020-08-24 22:00
Next-key吧
点赞 回复 分享
发布于 2020-08-07 12:30
我的理解是在hashmap或者hashset中需要使用hashcode()计算哈希值来确定元素存储的位置。只有两个Object哈希值相同,这两个Object的“值”才可能相等。在实际hashmap或hashset中在调用equals()方法的操作也是比较哈希值相同的(也就是在同一个LinkedList或红黑树)的数据。如果你的hashcode()方法都不能保证这两个Object能存到同一个LinkedList或红黑树中,那他们就不可能相等。 综上,所以如果想利用equals()方法判断两个Object相等,必须先重写hashcode()方法。
点赞 回复 分享
发布于 2020-08-07 11:19
我认为hashcode代表一个类的某些特征,原生的hashcode根据类的地址算出来的,重写了equals就要重写hashcode来满足实际的业务需求。(相同的类hashcode相等)
点赞 回复 分享
发布于 2020-08-07 09:27
因为相同的对象必须要有相同的hashcode,我面试被问到这么答的,面试官也说不对,不知道哪有问题
点赞 回复 分享
发布于 2020-08-05 23:07

相关推荐

02-01 12:05
复旦大学 Java
腾讯的提前批大概率应该是没有笔试的,但是这个时候有相当部分的同学简历估计都没有准备好,没准备好的同学也不用急,大部分都是3月之后开,这个时候开的绝大多数都是神仙打架,问的东西也比较难,打算投递的同学也多看下计算机网络和操作系统,腾讯对这部分的知识问的比较多。另外多刷下牛客的热门题库,刷题注意刷ACM模式,和牛客的周赛题,腾讯有的部门会从这里面出原题。我是@程序员花海关注我,带你了解更多校招资讯!
程序员花海:还没有来得及准备的同学可以看下学习路线:https://www.nowcoder.com/discuss/824693499982315520?sourceSSR=users算法题:https://www.nowcoder.com/feed/main/detail/20e7a999fa04485b88340a274411ca0d?sourceSSR=users八股文:https://www.nowcoder.com/discuss/833102362771251200?sourceSSR=users简历书写方式:https://www.nowcoder.com/discuss/839907820706205696?sourceSSR=users都是以前在牛客发的文章~
软开人,秋招你打算投哪些...
点赞 评论 收藏
分享
评论
2
28
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务