自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 Java性能优化技巧

摘要:本文介绍了Java字符串操作的两种优化方法。首先,建议在循环拼接字符串时使用StringBuilder而非"+"操作符,通过测试代码对比了10万次循环拼接的性能差异,显示StringBuilder显著更高效。其次,强调应利用字符串常量池而非new String()创建字符串,通过百万次对象创建测试证明了常量池方式在内存和性能上的优势。两种优化方法分别解决了字符串拼接时的对象创建开销和字符串对象的重复创建问题。

2026-02-01 22:49:58 785

原创 深入解析Java HashMap底层原理

HashMap 的底层数据结构?数组+链表+红黑树(JDK 8)。链表->红黑树阈值是 8,红黑树->链表阈值是 6。为什么 HashMap 容量建议是 2 的幂次方?为了让元素分布均匀。为了使用这种高效的位运算代替取模运算。HashMap 的扩容机制是怎样的?达到阈值(容量 * 负载因子)时扩容为 2 倍。JDK 8 通过位运算判断元素位置是原索引还是原索引+旧容量。HashMap 在 JDK 1.7 和 1.8 的区别?1.7头插法,1.8尾插法(防止死循环)。1.8 引入。

2026-01-31 22:29:01 1372

原创 BigDecimal格式化详解

本文详细解析了Java中BigDecimal格式化的核心方法与应用场景。BigDecimal的格式化主要分为数值精度调整和字符串展示两类:使用setScale()控制计算精度,返回新BigDecimal对象;利用DecimalFormat实现千分位、货币等复杂字符串格式化;String.format()适合简单输出,NumberFormat则处理本地化格式。文章对比了各方法的特性,建议根据需求选择:计算用setScale(),复杂展示用DecimalFormat,本地化用NumberFormat。同时介绍了

2026-01-23 07:57:31 793

原创 掌握BigDecimal精度控制:MathContext详解

是一个不可变(immutable)类,它的主要作用是为BigDecimal的运算设定一个“环境”或“上下文”。精度(Precision):运算结果应保留的总有效数字位数(注意:不是小数点后的位数)。例如,精度为4,则结果会保留4位有效数字。舍入模式(RoundingMode):当运算结果的有效数字超过设定的精度时,应如何舍入。通过预先创建一个对象并将其传递给BigDecimal的各种运算方法,可以实现对一系列计算的统一精度控制。

2026-01-22 09:41:19 877

原创 Java BigDecimal 全面教程:精确计算的基石与避坑指南

摘要: Java的BigDecimal类专为解决浮点数精度问题而设计,适用于金融、支付等精确计算场景。创建对象时应优先使用字符串构造器或valueOf()方法,避免直接使用double构造器。运算时需注意除法必须指定精度和舍入模式,比较数值应使用compareTo()而非equals()。此外,设置精度、格式化输出及处理集合时需警惕标度陷阱。最佳实践包括:用字符串初始化、显式控制舍入、统一格式化输出,并注意性能优化。通过遵循这些准则,可确保十进制计算的绝对精确性。

2026-01-22 00:10:51 885

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除