美文网首页
Remove Assignments to Parameters

Remove Assignments to Parameters

作者: 大姨夫斯基 | 来源:发表于2017-06-16 10:39 被阅读33次

    是怎样?

    重构前:

       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;
        }
    
    
    重构后:
    > ```Java
          public int discount(int inputVal, int quantity, int yearToDate) {
                int result = inputVal;
                if (inputVal > 50) {
                    result -= 2;
                }
                if (quantity > 100) {
                    result -= 1;
                }
                if (yearToDate > 10000) {
                    result -= 4;
                }
                return result;
            }
    

    如何做?

    • 新建一个临时变量 result 并初始化值为 inputVal,将所有对 inputVal 赋值的地方都改为对 result赋值。(新建临时变量这一步可以使用android studio 快捷键 cmd+opt+v)
    • 测试。

    详细阅读参考《重构》(看云)

    相关文章

      网友评论

          本文标题:Remove Assignments to Parameters

          本文链接:https://www.haomeiwen.com/subject/rsruqxtx.html