-3

考虑一个代码:

两个 return 语句,一个在 while 循环中,另一个在 while 循环外。没有休息

while (node != null) {
   if (node.item == 5) {
      return node;
   }
   node = node.next;
}
return node;

在 while 循环中带有中断的单个返回。

while (node != null) {
   if (node.item == 5) {
      break;
   }
   node = node.next;
}
return node;

是否有任何强有力的论据来遵循特定方法而不是其他方法?

4

1 回答 1

1

第一种方法仅在该方法的唯一目的是查找匹配节点时才有效。如果您想在 while 循环之外但在同一方法中对该节点执行某些操作,则需要使用第二种方法。

也就是说,我更喜欢第一种方法,并且认为单一责任原则会鼓励您制定一种专门用于获取匹配节点的方法。

不过,我会return null在最后,以便读者更容易理解,如果您到达方法的末尾,这实际上就是您将返回的内容。

于 2013-09-26T18:22:38.920 回答