不要再死记硬背代码片段,掌握核心逻辑走遍所有编程语言
不要再死记硬背代码片段,掌握核心逻辑走遍所有编程语言在程序员的成长路上,有一个普遍且致命的误区——死记硬背代码片段。
初中生也能学的编程,不走弯路,先用后学
初学编程,从拖拽控件开始,一个按钮弹出对话框让我觉得这东西不难。我用VB6.0做了几个带界面的小工具,像面积计算器、记事本这种,点一下就能出结果,挺有成就感的。后来试着用C重做一遍,发现写法不一样,但思路是通的。那时候装VB6.
别再只会写 T:Kotlin 泛型的实战用法
上一篇介绍了 Kotlin 泛型的基础。这一篇,我们先看类型参数之间的关系与约束,再把它们用于数据容器、结果包装、对象构建和数据转换,最后讨论运行时类型检查与反射的边界。我想借这篇文章,把自己了解的一些泛型用法尽量整理出来,因此例子会多一些,读起来可能稍显啰嗦。
Java金额计算为什么不能用double?BigDecimal一次讲清
最近发现了一个挺实用的 AI 学习网站,内容覆盖 AI 基础知识和相关教程,讲得比较直白易懂。想了解 AI 的可以顺手看看 https://www.captainbed.cn/xf金额、单价这些数字,用 double 存了一年,对账时才发现尾数对不上。
Java算钱差了8万块,几十万笔交易直接打回重算
对账那天下午,财务部打来电话——总账差了8万多。出纳核对了一整天,最后发现不是哪笔交易算错了,而是所有用double算金额的地方,精度都有偏差。不是代码逻辑写错了。是数据类型本身就不够精确。看这行代码:double amount = 0.1 + 0.2;System.out.
金额用 double 算错过账,后来一律换 BigDecimal
财务月底对账,对出来差了 3 毛 7 分钱。就这 3 毛 7,财务的同事追着我们查了整整两天。金额对不上,哪怕只差一分钱,财务都不可能放过——这是原则问题。最后定位到的根因,说出来你可能都不信,就因为一个 double。
MapStruct:Java对象映射神器,告别手写转换代码
在Java后端开发中,有一个永远绕不开的活——对象转换。DTO转Entity、Entity转VO、Request转DTO……一个中型项目下来,少说几十个转换类,多则上百个。手写这些代码不但枯燥,还容易漏字段、写错类型。更烦的是,每次加个字段就得满项目找转换代码去补。
代码减半,10分钟彻底告别 Java 开发旧习
如果还在手动编写 Getter、Setter 和繁琐的类型强转,这类代码实际上在浪费开发生命。Java 的演进已经让这些旧习惯变得毫无意义。从 Java 17 到 21,Java 发生了很大变化。写代码量可以减少了,但是逻辑却变得更清晰了。
金额计算用Double,对不上账
财务对账报表出来,总收入差了0.01元。别小看这一分钱,几百万笔交易每笔差一点,对不上账就是大事故。一查代码,金额用的是Double类型。0.1+0.2不等于0.3,你敢信?我们的支付系统,金额字段用的是Double类型。平时小金额看不出问题,但交易量大的时候,累计误差就出来了。