Record模式匹配实战:如何用新模式重构旧代码
文章目录
一、老代码的烦恼:拆数据像拆俄罗斯套娃
前几天我翻出五年前写的订单处理代码,发现满屏都是这样的"暴力拆箱"语句:
// 传统方式处理嵌套数据(像用锤子拆快递)
public double calculateTotal(Object order) {
if (order instanceof Order) {
Order o = (Order) order;
List<Item> items = o.items();
if (items != null) {
double sum = 0;
for (Item item : items) {
if (item != null && item.price() != null) {
sum += item.price() * (item.quantity() != null