动机
表达式有可能非常复杂而难以阅读。这种情况下,临时变量可以帮助你将表达式分解为比较容易管理的形式。在条件逻辑中,该方法特别有价值:你可以用这项重构将每个子句提炼出来,以一个良好命名的临时变量来解释对应条件子句的意义。使用这项重构的另一种情况是,在较长算法中,可以运用临时变量来解释每一步运算的意义。
做法
- 声明一个final临时变量,将待分解之复杂表达式中的一部分动作的运算结果赋值给它。
- 将表达式中的“运算结果”这一部分,替换为上述临时变量(如果被替换的这一部分在代码中重复出现,你可以每次一个,逐一替换)。
- 编译,测试。
- 重复上述过程,处理表达式的其他部分。
范例
if ((platform.toUpperCase().indexOf("MA