package cn.toltech.refactor.demo3;
/**
* Created by sz0816 on 15-1-7.
* 移除对参数赋值
* 1、以一个临时变量取代一个该参数的位置
* 2、使用了对参数赋值,对引用传递方式的会犯糊涂
* 3、对于入参值除外,但是尽量避免入参值
*/
public class RemoveAssignmentsToParams {
/****
* 对传递的inputVal参数进行了赋值
*/
public int discount(int inputVal,int quantity,int yearToDate){
if(inputVal > 50)
inputVal -=2;
if(quantity >100)
inputVal-=1;
if(yearToDate>10000)
inputVal -=4;
return inputVal;
}
/***
* 修正方式,使用临时变量
*/
public int discountRepair(final int inputVal,final int quantity, final int yearToDate){
int result = inputVal;
if(inputVal > 50)
result -=2;
if(quantity >100)
result-=1;
if(yearToDate>10000)
result -=4;
return result;
}
}
重构-不要对参数赋值
最新推荐文章于 2022-10-25 17:31:17 发布