一个临时变量保存某一个表达式的运算结果
double basePrice = quantity * itemPrice;
if (basePrice > 1000) {return basePrice * 0.95;
} else {return basePrice * 0.98;
}
重构后
if (basePrice() > 1000) {return basePrice() * 0.95;
} else {return basePrice() * 0.98;
}double basePrice() {return quantity * itemPrice;
}
临时变量的问题在于:它们是暂时的,而且只能在所属函数内使用。它们会驱使你写出更长的函数。