- 博客(4)
- 收藏
- 关注
原创 if-else代码优化的八种方案
代码中如果if-else比较多,阅读起来比较困难,维护起来也比较困难,很容易出bug,接下来,本文将介绍优化if-else代码的八种方案。
2023-07-11 09:01:36 246 1
原创 对象映射神器Mapstruct,高效开发
source:源数据,在上述例子中代表 Dog 指需要被映射的数据target:目标值,在上述例子中代表 Animal 指映射成的数据constant:常量值,如果在映射时目标值多于源数据 那么就可以使用这个代指:默认值,转换当源属性为null的时候,我们用defaultValue来指定默认值ignore:忽略转换的值expression:需要写一些表达式,如stream,optional,xxxUtil。但前提是需要在 Mapper中imports。
2023-07-11 08:54:49 238 1
原创 彻底搞懂Optional,从此告别空指针
Optional是 Java 语言的有益补充 —— 它旨在减少代码中的,虽然还不能完全消除这些异常。它也是精心设计,自然融入 Java 8 函数式支持的功能。总的来说,这个简单而强大的类有助于创建简单、可读性更强、比对应程序错误更少的程序。注意:Option类是判断空指针异常时用的,对于其他的if…else只要不是判断空指针的问题,就不要使用Option类,不要陷入一个误区,以为学了Option类,看见if…else就往Option来想,这么做真是大作特错。
2023-07-03 09:09:28 114 1
原创 保姆级教学,让你一秒学会分布式锁
CAS算法:CAS,即Compare And Swap,意思是:比较并替换。CAS算法需要3个操作数:内存地址V,旧预期值A,将要更新的目标值B。CAS指令执行时,当且仅当内存地址V的值与预期值A相等时,将内存地址V的值修改为B,否则就什么都不做。整个比较并替换的操作是一个原子操作。CAS是乐观锁技术,当多个线程尝试使用CAS同时更新同一个变量时,只有其中一个线程能更新变量的值,而其它线程都失败,失败的线程并不会被挂起,而是被告知这次竞争中失败,并可以再次尝试。
2023-06-30 09:57:30 107
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人