java8
文章平均质量分 75
SiegfriedG
这个作者很懒,什么都没留下…
展开
-
彻底理解java中HashMap的“冲突”问题及hashCode和equals方法重写问题
众所周知,HashMap是Java知识点里的重中之重,也是面试、尤其是中高级程序员面试中的必考点。扎扎实实把hashMap的底层原理搞清楚是十分必要的。首先,关于HashMap的底层原理,数组+链表(java8之后改为数组+链表+红黑树)存储结构,以及“碰撞”/“冲突”,初始大小,负载因子,rehash()等等这些概念及原理,相信大家都知道的八九不离十了,网上也有海量相关文章,本文不再论述这些内容。但是,最近在复习这些知识的时候,发现了一个以前没有注意到的细节问题——到底什么情况下会发生“碰撞/冲突”?原创 2020-06-27 16:22:38 · 3063 阅读 · 3 评论 -
Java8 StreamAPI的forEach方法与Iterable 接口的forEach方法对比(及peek方法)
最近在听一个课程的时候,发现里面有一处需要遍历一个集合,对元素进行某种操作(比如set某个属性),该讲师用的是map(),在map方法里返回一个更新后的元素。而对于此功能,自己首先想到的是forEach()方法,因为在我之前的概念里,forEach()方法才是用来遍历操作的,而map是用来将一个类型的集合映射为另一个类型的集合(当然,映射为同一个类型也无可厚非)。于是自己详细测试了forEach方法,发现这里面还是有些门道的!下面详说: List<Student> students原创 2020-06-18 22:51:55 · 1675 阅读 · 0 评论