getTheLastElement()
の代わりにgetTheLastElement2()
を使用する利点(利点がある場合)はありますか?結果を返すほうが簡単な場合は、参照番号obj
を作成する必要があるのはなぜですか?Javaのリストから要素を返す
2
A
答えて
2
これらの2つの実装には違いはありません:obj
の参照はおそらく最適化されています。
getTheLastElement2
という文の中でブレークポイントを設定して、常にヒットすることがあるので、コードをデバッグするときに少しの利点があります。これは戻り値を調べるために2つのブレークポイントが必要なgetTheLastElement
とは対照的です。最初の例ではelse
が冗長であることを
注:あなたは、さらに、単一の三元表現にこれを縮小することができ
public Object getTheLastElement(){
if (list.isEmpty()) {
return null;
}
return list.get(list.size()-1);
}
:
public Object getTheLastElement(){
return !list.isEmpty() ? list.get(list.size()-1) : null;
}
+0
それ以外は実行時間に影響しますか? – webpersistence
+0
@rExいいえ、それは冗長であり、コンパイラによって削除される予定です。実行速度の面ではこれらはすべて等しい。 – dasblinkenlight
1
いいえ、利点はありません。また、返す必要がありますlist.get(list.size()-1)
関連する問題
- 1. Scalaのリストから要素を返す
- 2. Haskell - 2つのリストから要素を交互に返す
- 3. リストのリストから要素を取得
- 4. リストから要素を削除するときのJavaエラー
- 5. Java 8のリストから最初の要素を見つける
- 6. JAVA - 反復リストから非イテレータ要素を削除する
- 7. F# - シーケンスからの要素を返す
- 8. リストから要素を削除する
- 9. リストから要素を取得する
- 10. リストから要素を取得する
- 11. リストから要素をフィルタリングする
- 12. リスト内の要素のリスト反復子を返す方法
- 13. Prolog - リストにある要素のリストを返す方法
- 14. 他の要素に含まれていない要素のリストを返します[JAVA/ANDROID]
- 15. リストのリスト内の要素を変更する方法Java
- 16. java- resetリストの最初の要素にイテレータをリストします
- 17. prolog - リストのリストの用語から要素を追加する
- 18. リストからの要素の追加
- 19. リストに要素を挿入して同じリストを返す
- 20. OCaml:リストの最初の要素を返すと、それをリストから削除できますか?
- 21. リスト要素からベクトルを作るR
- 22. SML:リストから要素を取得
- 23. selenium javaのjsonリストから最初の要素をフェッチする方法は?
- 24. 要素のリストからなるYAMLキー
- 25. リストのリストに繰り返し要素がありますpython
- 26. Vue.jsインデックスからjsonsのリストから要素を削除する
- 27. Java繰り返しリストごとに2つの要素があります
- 28. Pythonはリストのリストから空の要素を削除
- 29. エスプレッソ:要素のリストから1つの要素を選択する方法
- 30. 2つのリストを要素で比較し、3つ目の要素を返します。要素の差
どちらもこれらの作品の。 –
'size'だけでなく' size-1'番目の要素を返す必要があります。 – Kajal
また、http://stackoverflow.com/questions/36707/should-a-function-have-only-one-return-statementをご覧になりたい場合もあります。これは、単一の出口点を持つことの長所と短所を論じています。関数内の複数の出口点。あなたのコード例では、 'getTheLastElement()'は読みやすく、 'else'文がなくてもそうであることを示唆しています。 – mhawke