仅为了 ���读性
而引入变量,这是一个好主意吗?
示例1:
while(nameNode1.charAt(0) == nameNode2.charAt(0) && nameNode1.length() > 1 && nameNode2.length() > 1)
{
nameNode1 = nameNode1.substring(1, nameNode1.length());
nameNode2 = nameNode2.substring(1, nameNode2.length());
}
例子2:
boolean letterFromBothNodesAreEqual_andNameHasMoreThanOneLetter = nameNode1.charAt(0) == nameNode2.charAt(0) && nameNode1.length() > 1 && nameNode2.length() > 1;
while(letterFromBothNodesAreEqual_andNameHasMoreThanOneLetter)
{
nameNode1 = nameNode1.substring(1, nameNode1.length());
nameNode2 = nameNode2.substring(1, nameNode2.length());
}
这可能是一个极端的例子,但我认为你已经理解了这个概念。
我没有在代码中看到过这种情况,想知道这是否是一种有用的方法?
谢谢。
背景:我正在尝试从大学转变为初级开发人员,目前我正在专注于编写清晰的代码。
nodesHaveSameInitial(node1, node2)
? - assyliasletterFromBothNodesAreEqual_andNameHasMoreThanOneLetter
,则示例2可能会导致无限循环。这是引入可读性变量会创建意外错误的示例。NESPowerGlove的答案展示了更好的方法。 - TheBlastOne