であり、どちらもコンシューマをパラメータとして取得します。ですから、Java 8がTime APIのように混乱を避けるためのものであれば、なぜ新しい混乱を招いたのでしょうか?または私はいくつかのポイントを逃している?Iterator.forEachRemaining()とIterable.forEach()の両方を持つ点は何ですか?
-2
A
答えて
13
2つの方法が両方とも存在する理由を理解するには、まずIterator
とIterable
が何であるかを理解する必要があります。
Iterator
は、基本的には「次の要素」を持ち、通常は終わりです。
Iterable
は、有限または無限のシーケンスの要素を含むものであるため、は、次の要素を取得し続けることによってを反復することができます。つまり、Iterable
秒はIterator
秒まで繰り返すことができます。
これを理解したので、問題の2つの方法の違いを教えてください。
例としてアレイリストを使用しましょう。これは、配列リストの内側にあるものです:今、私はIterable.forEach()
を呼び出し、System.out::print()
に渡した場合、13680
が印刷されます
[1, 3, 6, 8, 0]
。これは、Iterable.forEach
が要素のシーケンス全体を反復処理するためです。一方
、私は配列リストのIterator
を取得し、System.out::print()
でforEachRemaining
を呼び出す前に、680
が印刷されますが、二回next
を呼び出した場合。 Iterator
はすでに最初の2つの要素を反復しているので、残りのものは6,8および0です。
+0
大丈夫。あなたの明確で完全な答えに感謝します。 –
関連する問題
- 1. クラスとインスタンスの両方のバージョンを持つテーブルの名前は何ですか?
- 2. キャリッジリターンと改行の両方を使用する点は何ですか?
- 3. CloudfrontとCloudflareの両方を使用する利点は何ですか?
- 4. DruidとElasticSearchの違いは何ですか?両方の利点は何ですか?
- 5. この未使用関数を持つ点は何ですか?
- 6. 角度1.5で '一方向の結合'(<)を持つ点は何ですか?
- 7. Rubyで「x ... n」を持つ点は何ですか?
- 8. クライアントとGKSessionを持つサーバの両方
- 9. MM_LOMETRICとMM_LOENGLISHのようなメトリックマッピングモードを持つ点は何ですか?
- 10. ステートメントは=と==の両方を持つことができますか?
- 11. Laravelにwebとapiガードの両方を持つことはできますか?
- 12. MongoIterable.forEach対Iterable.forEach
- 13. レールとレーキコマンドの両方が必要なのは何ですか?
- 14. "rel = nofollow noopener" - 両方を同時に持つことは可能ですか?
- 15. 親ポインタを持つバイナリ検索ツリーの利点は何ですか?この時点までは
- 16. 「auto」と「none」の両方の値を持つCSSプロパティはありますか?
- 17. 多くの異なるデータ型を持つ利点は何ですか?
- 18. 両方のオペランドに同じレジスタを持つTEST命令の目的は何ですか?
- 19. 両方の式を持つファイルをgrepする方法はありますか?
- 20. 127.0.0.1に解決されるドメイン名(spotilocal)を持つ利点は何ですか?
- 21. HDInsightクラスタにリンクされたストレージアカウントを持つ利点は何ですか?
- 22. ReadとPublishの両方の権限を持つFacebook LoginManagerでログインすることはできますか?
- 23. OpenGL ES 1.1では、vertexColorsとライティングの両方を持つことは可能ですか?
- 24. 最大値と別の値の両方の値を持つ列
- 25. EF6にプライマリキーとID列の両方を持つエンティティを作成
- 26. phpとjavascriptの両方を持つアプリケーションのテストケース
- 27. プライマリキーと外部キーの両方のフィールドを持つエコースキーマ
- 28. Pythonのサポートとxterm_clipboardの両方を持つVimディストリビューション
- 29. objective-cとswiftの両方を持つプロジェクトのクラス・プレフィックス
- 30. cとcppファイルの両方を持つNMakeの推論ルール
'Iterator'と' Iterable'を比較しようとしていますか? http://stackoverflow.com/questions/6863182/what-is-the-difference-between-iterator-and-iterable-and-how-to-use-them – nullpointer
どのように混乱しますか?それらは2つの異なるインターフェースであり、メソッドの名前は彼らが何をするかをはっきりと示しています。 –
@JBNizetすべての人、私にトマトを投げないでください!私はそれを得た:D –