タグ付けされた質問 「collections」

コレクションAPIは、オブジェクトのコレクションの処理を容易にする一連のクラスとインターフェースを開発者に提供します。

14
コレクションを比較する組み込みの方法はありますか?
Equalsメソッドでいくつかのコレクションの内容を比較したいと思います。辞書とIListがあります。これを行うための組み込みの方法はありますか? 編集:2つの辞書と2つのIListを比較したいので、等しいことの意味は明らかだと思います。2つの辞書に同じ値にマップされた同じキーが含まれている場合、それらは等しくなります。
178 c#  .net  collections 

4
List <T>をループして各項目を取得するにはどうすればよいですか?
リストをループして各項目を取得するにはどうすればよいですか? 出力を次のようにします。 Console.WriteLine("amount is {0}, and type is {1}", myMoney.amount, myMoney.type); これが私のコードです: static void Main(string[] args) { List&lt;Money&gt; myMoney = new List&lt;Money&gt; { new Money{amount = 10, type = "US"}, new Money{amount = 20, type = "US"} }; } class Money { public int amount { get; set; } public …
176 c#  for-loop  collections 

22
リスト内の要素の出現回数を数える方法
私が持ってArrayList次のように、Javaのコレクションクラスを: ArrayList&lt;String&gt; animals = new ArrayList&lt;String&gt;(); animals.add("bat"); animals.add("owl"); animals.add("bat"); animals.add("bat"); ご覧のとおり、animals ArrayListは3つのbat要素と1つのowl要素で構成されています。コレクションフレームワークに、bat発生数を返すAPIがあるのか​​、それとも発生数を判別する別の方法があるのか​​と思いました。 GoogleのコレクションにMultisetは、要素の出現回数の合計を返すAPIがあることがわかりました。ただし、これはJDK 1.5とのみ互換性があります。弊社の製品は現在JDK 1.6ですので使用できません。

14
反復せずにハッシュマップから1つのエントリを取得する方法
Entry&lt;K,V&gt;キーが不明な場合に、反復せずにHashMapから1つだけを取得するエレガントな方法はありますか? エントリーのエントリー順は重要ではないので、次のように言うことができますか? hashMapObject.get(zeroth_index); 私はそのようなget by indexメソッドが存在しないことを知っていますが。 以下のアプローチを試した場合でも、ハッシュマップのすべてのエントリセットを取得する必要があります。 for(Map.Entry&lt;String, String&gt; entry : MapObj.entrySet()) { return entry; } 提案は大歓迎です。 編集:要件を満たすのに他のデータ構造を提案してください。
172 java  collections 

2
IEnumerable <KeyValuePair <>>から辞書を再作成する
を返すメソッドがありますがIEnumerable&lt;KeyValuePair&lt;string, ArrayList&gt;&gt;、一部の呼び出し元は、メソッドの結果を辞書にする必要があります。をに変換しIEnumerable&lt;KeyValuePair&lt;string, ArrayList&gt;&gt;てDictionary&lt;string, ArrayList&gt;使用できるようにするにはどうすればよいTryGetValueですか? 方法: public IEnumerable&lt;KeyValuePair&lt;string, ArrayList&gt;&gt; GetComponents() { // ... yield return new KeyValuePair&lt;string, ArrayList&gt;(t.Name, controlInformation); } 発信者: Dictionary&lt;string, ArrayList&gt; actual = target.GetComponents(); actual.ContainsKey("something");

6
列挙型をセット/リストに変換
特定の列挙をjava.util.Listまたはjava.util.Setにダンプするためのワンライナーブリッジメソッドはありますか? 何かがのようなビルトインArrays.asList()またはCollection.toArray()どこかに存在している必要がありますが、私は(あまりにも、とGoogle / SO結果を)私IntelliJのデバッガの評価ウィンドウでそれを見つけることができませんよ。

7
不変コレクションと変更不可能なコレクション
以下からのコレクションフレームワークの概要: 変更操作をサポートしていないコレクションは、(のようなadd、removeとclear)と呼ばれている変更不可能。変更不可でないコレクションは変更可能です。 Collectionオブジェクトの変更が表示されないことをさらに保証するコレクションは、不変と呼ばれます。不変でないコレクションは変更可能です。 区別がつかない。ここで変更不可と不変の 違いは何ですか?


19
HashSetとHashMapの違いは?
別に事実からHashSet重複する値を許可しない、の違いは何であるHashMapとはHashSet? 私は賢明な実装を意味しますか?どちらもハッシュテーブルを使用して値を格納するため、少しあいまいです。

9
コレクション内のカウントvs長さvsサイズ
多くのプログラミング言語とライブラリを使用していることから、コレクション内の要素の総数に使用されるさまざまな用語に気づきました。 最も一般的なのは、ように見えるlength、countとsize。 例えば。 array.length vector.size() collection.count 使用すべき好ましい用語はありますか?コレクションの種類によって異なりますか?すなわち。可変/不変 メソッドではなくプロパティであるという好みはありますか?

13
Javaでint []をInteger []に変換する方法は?
私はJavaに不慣れで、非常に混乱しています。 長さ4の大きなデータセットがありint[]、4つの整数の特定の組み合わせが発生する回数を数えたい。これは、ドキュメント内の単語の出現頻度を数えるのとよく似ています。 Map&lt;int[], double&gt;リストが繰り返し処理されるときに各int []を現在のカウントにマップするを作成したいのですが、Mapはプリミティブ型を取りません。 だから私は作った Map&lt;Integer[], Double&gt; 私のデータはとして保存されているArrayList&lt;int[]&gt;ので、ループは次のようになります ArrayList&lt;int[]&gt; data = ... // load a dataset` Map&lt;Integer[], Double&gt; frequencies = new HashMap&lt;Integer[], Double&gt;(); for(int[] q : data) { // **DO SOMETHING TO convert q from int[] to Integer[] so I can put it in the map if(frequencies.containsKey(q)) { frequencies.put(q, …

2
HashSet <Point>がHashSet <string>よりもはるかに遅いのはなぜですか?
重複を許可せずにいくつかのピクセル位置を保存したかったので、最初に頭に浮かぶのは、HashSet&lt;Point&gt;または同様のクラスです。しかし、これはのようなものに比べて非常に遅いようHashSet&lt;string&gt;です。 たとえば、次のコード: HashSet&lt;Point&gt; points = new HashSet&lt;Point&gt;(); using (Bitmap img = new Bitmap(1000, 1000)) { for (int x = 0; x &lt; img.Width; x++) { for (int y = 0; y &lt; img.Height; y++) { points.Add(new Point(x, y)); } } } 約22.5秒かかります。 次のコード(明らかな理由からこれは適切な選択ではありません)は1.6秒しかかかりません。 HashSet&lt;string&gt; points = new HashSet&lt;string&gt;(); using (Bitmap …

4
Java Collections Framework実装のBig-Oサマリー?[閉まっている]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 3年前休業。 この質問を改善する まもなく「Javaクラッシュコース」を教えるかもしれません。オーディエンスメンバーがBig-O表記を知っていると想定するのはおそらく安全ですが、さまざまなコレクション実装でのさまざまな操作の順序が何であるかを知っていると想定するのはおそらく安全ではありません。 私は時間をかけて自分で要約行列を生成することもできますが、それがパブリックドメインのどこかにすでに存在している場合は、それを再利用したいと思います(もちろん、適切なクレジットを使用します)。 誰かが何かポインタがありますか?
164 java  collections  big-o 

12
JUnitの2つのリストが等しいことをアサートする
JUnitテストケースのリスト間で等価アサーションを作成するにはどうすればよいですか?平等はリストの内容の間にあるべきです。 例えば: List&lt;String&gt; numbers = Arrays.asList("one", "two", "three"); List&lt;String&gt; numbers2 = Arrays.asList("one", "two", "three"); List&lt;String&gt; numbers3 = Arrays.asList("one", "two", "four"); // numbers should be equal to numbers2 //numbers should not be equal to numbers3

9
.NETでブロッキングQueue <T>を作成しますか?
複数のスレッドがキューに追加され、複数のスレッドが同じキューから読み取るシナリオがあります。キューが特定のサイズに達すると、キューから項目が削除されるまで、キューを満たしているすべてのスレッドが追加時にブロックされます。 以下の解決策は私が現在使用しているものであり、私の質問は次のとおりです。これをどのように改善できますか?使用する必要があるBCLでこの動作を既に有効にしているオブジェクトはありますか? internal class BlockingCollection&lt;T&gt; : CollectionBase, IEnumerable { //todo: might be worth changing this into a proper QUEUE private AutoResetEvent _FullEvent = new AutoResetEvent(false); internal T this[int i] { get { return (T) List[i]; } } private int _MaxSize; internal int MaxSize { get { return _MaxSize; } set …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.