HashMap
-
代码优雅之道——如何干掉过多的 if else
1前言 注意标题是过多的,所以三四个就没必要干掉了。实际开发中我们经常遇到判断条件很多的情况,比如下图有20多种情况,不用想肯定是要优化代码的,需要思考的是如何去优化? 网上很多说…
-
设计模式第四弹 – 结构型模式[二]
哈喽,我是janker。 上篇通过小故事已经介绍了一些结构型的设计模式,今天介绍剩下的结构型模式,阿峰的故事还在继续。 正文 外观模式 阿峰身在卷都,为了能留下来,他入手了余杭区的…
-
为什么阿里不推荐使用 keySet() 遍历HashMap?
Part1引言 HashMap相信所有学Java的都一定不会感到陌生,作为一个非常重用且非常实用的Java提供的容器,它在我们的代码里面随处可见。因此遍历操作也是我们经常会使用到的…
-
Java并发系列之 第二篇:深入浅出AQS之共享锁模式源码分析
引言 在Java并发编程中,为了保证多线程间的数据一致性和线程安全性,我们经常会使用锁来对共享资源进行保护。而AbstractQueuedSynchronizer(AQS)是Jav…
-
JVM诊断命令jcmd介绍
原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 从JDK7开始,jdk提供了一个方便扩展的诊断命令jcmd,用来取代之前比较分散的jdk基础命…
-
Gson的TypeToken与泛型擦除
原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 问题 在Java的json框架中,Gson是使用得比较广泛的一个,其Gson类提供了toJson()…
-
Java8中那些方便又实用的Map函数
原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 java8之后,常用的Map接口中添加了一些非常实用的函数,可以大大简化一些特定场景的代码编写…
-
我有一篇Java Stream使用手册,学了就是你的了!
原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,非公众号转载保留此声明。 简介 日常编程工作中,Java集合会经常被使用到,且经常需要对集合做一些类似过滤、排序、对象…
-
Java 17 与 Java 11:探索最新功能,为什么我强烈建议你升级到 Java 17?
Java 17 是 Java 编程语言的最新 LTS(长期支持)版本(除去刚发布的21),于 2021 年 9 月 14 日发布。如果您当前正在使用 Java 11,那么可能是时候…
-
HashMap你了解多少
在日常开发工作中,HashMap是使用频率相当高的一个工具,同时「HashMap」的底层实现和原理,也成了面试题中的常客。最近又翻看了一下源码,做个记录。(本文都是基于jdk1.8…
-
【锁思想】自旋 or CAS 它俩真的一样吗?一文搞懂
大家好,我是Coder哥,在技术日新月异的今天,真正应该花费时间学习的是那些不变的编程思想,今天我们来接着上一篇文章来聊一下锁思想,我们上一篇”读写锁“详细的分析了读写锁解决线…
-
Java 中的 Stream 可以替代 for 循环吗?
Java8的发布是Java历史上的一个重大时刻。Streams 和 Lambda 被引入,它们现在被广泛使用。如果你不知道 Streams,或者从来没有听说过它,那是完全没有问题的…
-
避免低级错误:深入解析Java的ConcurrentModificationException异常
在软件开发中,我们常常会遇到各种错误和异常。其中有一类比较低级但又常见的错误就是ConcurrentModificationException异常。最近了我就写了个这种异常,这个异…
-
引以为戒:避免在Set中使用未重写equals和hashCode的引用对象进行去重
在日常的Java开发中,我们经常会使用Set集合来实现去重操作,确保集合中不含有重复的元素。然而,如果使用未重写equals()和hashCode()方法的引用对象进行去重,可能会…
-
Guava 骚操作,10分钟搞定日志脱敏需求!
Guava之于Javaer,如同Excel之于办公达人。 都非常好用,但实际上大部分人只用到了其1%不到的功能。 1日志脱敏到底是个啥 敏感信息脱敏实际上是隶属于安全领域的一个子领…
-
Guava 骚操作,10分钟搞定日志脱敏需求!
Guava之于Javaer,如同Excel之于办公达人。 都非常好用,但实际上大部分人只用到了其1%不到的功能。 1日志脱敏到底是个啥 敏感信息脱敏实际上是隶属于安全领域的一个子领…