-3

コードを考えてみましょう:

2 つの return ステートメント。1 つは while ループ内、もう 1 つは while ループ外です。休憩なし

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

while ループ内で中断を伴う 1 回のリターン。

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

特定の方法を他の方法よりも優先する強力な議論はありますか?

4

1 に答える 1

1

最初の方法は、メソッドの唯一の目的が一致するノードを見つけることである場合にのみ機能します。そのノードで while ループの外で同じメソッド内で何かをしたい場合は、2 番目の方法を使用する必要があります。

そうは言っても、私は最初のアプローチを好み、単一責任の原則により、一致するノードを取得するための特別な方法を作成することが奨励されると主張します。

return nullただし、メソッドの最後に到達した場合に実際に返されるものであることを読者が理解しやすいように、最後にそうします。

于 2013-09-26T18:22:38.920 に答える