
基础知识
Java基础知识,特别容易忽视的基础知识!
饶艳辉
十年以上程序员老兵,关注技术交流、提倡原创、拥抱开源。专注服务端、数据结构、算法、互联网微服务、分布式、高可用等架构领域!!!
展开
-
JAVA子父类代码块输出顺序
子父类代码块输出顺序,资深程序员都会犯的错误。当然也是面试的时候一些公司会出的面试题,我想可能就是知道大多数程序员都会犯错,如果符合应聘要求后期用了压工资的吧,个人觉得出这样的面试题的企业我也是醉了!!!这里整理出来和大家一起学习。 package com.algorithm; /** * 面试锦集: * 子父类代码块输出顺序(资深程序员都会犯的错误) * * @author 小辉哥...原创 2019-08-04 11:16:40 · 421 阅读 · 0 评论 -
JAVA二分查找/折半查找
二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。二分查找时间复杂度为O(log2n),具体关于时间复杂度的推理大家可以去看百度百科!!! package com.algorithm; import java.util.Arrays; /** * 面试锦集: * 二分查找/折半查...原创 2019-08-06 18:26:32 · 352 阅读 · 0 评论 -
ConcurrentHashMap弱一致性迭代器
什么是弱一致性迭代器??? 当创建迭代器后,其他线程删除了该元素时候并不会抛出java.util.ConcurrentModificationException异常,能够保持创建迭代器后的元素被正确的Iterator.next()出来。例如ConcurrentHashMap就是弱一致性迭代器,HashMap就是强一致性迭代器。 通过下面代码部分,我们可以更好的理解弱一致性和强一致性迭代器。 ...原创 2019-08-25 21:40:44 · 1116 阅读 · 1 评论 -
为什么重写equals方法同时需要重写hashCode方法?
为什么重写equals方法同时需要重写hashCode方法? 众所周知equals()和hashCode()是Object类中定义的方法。Object类定义的方法如下: Object的equals()定义如下: 注释部分大概意思是: 请注意,每当重写此方法时,通常需要重写哈希代码,其中规定相等的对象必须具有相等的哈希代码。 Object的hashCode()定义如下: 以上...原创 2019-08-30 00:43:03 · 4266 阅读 · 3 评论