問題タブ [iterable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Iterable インターフェースの実装
古い試験用紙でこの試験問題を見つけたので、次の試験の準備をしています。私はそれを把握することはできません :
以下は、Iterable インターフェースを実装する考案された部分クラスを示しています。このクラスの唯一の目的は、属性を反復処理するメソッドを提供することですthings.
クラスを終了するには、クラスで記入する必要があるものが 2 つあります。クラスはこちら
私はそれが次のようなものであるべきだと推測しています:
この質問に対する答えを具体化する方法がよくわかりませんが、誰か助けてもらえますか?
scala - 任意の長さのタプルを繰り返す
私は Scala を使い始めたばかりで、問題に遭遇しました。
Scala には型、、、Tuple1
… Tuple2
、がありTuple22
ます。Scalaquery は、クエリを反復処理するときにタプルを返します。
これで、特定のクラス (ZK's ListitemRenderer
) ができました。このクラスは、 を受け取りObject
、それぞれがいくつかのセルで構成される行を含む gui リストを作成します。しかしListitemRenderer
、一般的ではありません。したがって、私の問題は、Object
「データ」を持っていることです。これは実際には任意の長さのタプルであり、セルを作成するために反復する必要があります (単純にdata._1.toString
, …)。
以来ありません へのスーパータイプをTuple1-22
知りませんでした。できない できなかったdata.asInstanceOf[Tuple].productIterator foreach {…}
私に何ができる?
以下の回答は、実際にすべてのタプルに特性があることを教えてくれました – Product
– 目的の機能を提供しforeach
ます。
java - Freemarker で java.lang.Iterable を #list 式として扱う
私は java.lang.Iterable (実際には com.google.gson.JsonArray インスタンス) を持っています。
freemarker (2.3.16) を使用してリスト内の項目を列挙したいと思います。
アイテムの明示的なコレクションを持つためだけに、カスタム Bean と Gson デシリアライザーを作成する必要がないようにしたいと思います。Gson (既に JSON 文字列を JsonObject にデシリアライズしています) を使用して、その JsonObject からオブジェクトの独自の DAG を作成するのは無駄に思えます。
残念ながら、Freemarker に java.lang.Iterable をリストとして扱わせる方法を見つけることができませんでした。私は得る:
java - Java反復問題
「Catalog」は、「Item」オブジェクトのコレクションを格納するクラスです。この目的でリストコレクションを使用することを選択しました。したがって、次のようになります。
メインクラスは、Catalogオブジェクトをコレクション自体のように扱うforループを使用してItem要素にアクセスできる必要があります。「catalog:」という名前のCatalogオブジェクトを想定します。
問題:互換性のないタイプのエラーが発生します。
私のCatalogクラスはIterableを実装し、リストのイテレーターを返すメソッドiterator()を持っています。
だから私は何が間違っているのですか?
java - IterableをCollectionに変換する簡単な方法
私のアプリケーションでは、サードパーティのライブラリを使用しています(正確にはMongoDBのSpring Data)。
このライブラリのメソッドはを返しIterable<T>
ますが、私のコードの残りの部分はを期待していCollection<T>
ます。
どこかに、一方を他方にすばやく変換できるユーティリティメソッドはありますか?foreach
このような単純なことのために、コード内に一連のループを作成することは避けたいと思います。
python - ソートされたタプルへのPython辞書、これはもっとうまくできますか?
次の特性を持つ入力用の辞書があります。
- 各値は、整数、文字列、または反復可能 (文字列以外) のいずれかになります。
- 要素が iterable の場合、その iterable の各要素は文字列または整数のみになります。
元:
入力を、各タプルがキーと値のペアであるタプルのリストに変換する必要があります。反復可能な要素の場合、要素ごとにキーと値のペアがあり、値でソートされます。たとえば、上記の出力は次のようになります。
現在、次のジェネレーターを使用してこれを実装しています。
これはよりクリーンな方法で実行できると思いますが、改善のための提案はありますか?
python - Python でイテラブルを配列に変換する
これはだまされているに違いありませんが、この質問の既存のインスタンスが見つかりませんでした...
Pythonでイテラブルを配列に変換する最も簡単な方法は何ですか(理想的には、何もインポートせずに)?
注: 理想的には、入力が配列の場合、それを複製すべきではありません (ただし、これは必須ではありません)。
scala - Iterable で長さがある Scala 型?
Scala コードを書いていると、要素のコレクションに対して反復的に動作する「プロセッサ」関数があり、コレクションの長さを知る必要がある場合に定期的に遭遇します。
一方、コレクションを生成する「プロバイダー」機能があるため、すでに長さを知っています。生成されたコレクションはList[T]
、Array[T]
またはSet[T]
などですが、 の場合でもList[T]
、私のジェネレーターはサイズを知っています (List
型がそれを格納していなくても)。
したがって、「プロセッサ」関数は、すべてのコレクション型に適合すると思われる最も一般的な型 をパラメーターとして取るものとして自然に宣言しIterable[T]
ます。ただし、その後、内部的に O(N) のコストで反復コレクション トラバーサルを介してサイズを調べる必要があり、これは望ましくありません。
したがって、私の素朴な解決策は、次のような新しい型を作成しIterableWithSize[T]
、プロバイダーとプロセッサの関数にこの型を作成して取得させることです。どちらSeq[T]
もIndexedSeq[T]
法案に合わないようです。しかし、これは比較的一般的な使用例のように思われるので、もっと慣用的な方法があるのではないかと思います。それは何でしょう?
java - iterator と iterable の違いとその使い方
私はJavaが初めてで、イテレータとイテラブルと本当に混同しています。誰かが私に説明して、いくつかの例を挙げてもらえますか?
java - なぜ反復可能なのかおよびイテレータ別のパッケージで?
Iterable<E>
にありjava.lang
ますIterator<E>
が、にありjava.util
ます。これには正当な理由がありますか、それともこれは単に悪いデザインのアーティファクトですか?
Iterable<E>
が良いのはを提供することだけなので、奇妙に思えIterator<E>
ます。
編集:1つの潜在的な理由は、(その後)新しく導入されたfor-eachループのためです。私の質問は、それらは同等ですか?
もしそうなら、コンパイラが構造java.util
を使用するためにとにかくインポートしなければならないので、それでも2つのクラスが異なるパッケージにある理由を説明していませんIterator
。