問題タブ [hashset]

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.

0 投票する
2 に答える
2117 参照

c# - ジェネリック拡張メソッドを正しく機能させる際の問題

HashSetの拡張メソッドAddRangeを作成しようとしているので、次のようなことができます。

これは私がこれまでに持っているものです:

問題は、AddRangeを使用しようとすると、次のコンパイラエラーが発生することです。

The type arguments for method 'AddRange<T>(System.Collections.Generic.ICollection<T>, System.Collections.Generic.List<T>)' cannot be inferred from the usage. Try specifying the type arguments explicitly.

言い換えれば、私は代わりにこれを使用することになります:

私はここで何が間違っているのですか?

0 投票する
2 に答える
1549 参照

c# - HashSet.AddRange() を使用して List を HashSet に変換する汎用拡張メソッドを作成するにはどうすればよいですか?

HashSet には AddRange メソッドがないので、その拡張メソッドを書きたいと思います。これは私が持っているものです:

基本クラス Media と派生クラス Photo があります。これは私が働きたいコードです:

ただし、コンパイラは、を使用しようとすると、List<Photo>をに変換できないと言っています。これは拡張メソッドにあるためだと確信していますが、型が の型と異なるようにするにはどうすればよいですか?IEnumerable<Media>AddRange()IEnumerable<T>AddRange<T>

0 投票する
4 に答える
38410 参照

.net - HashSet を変換する.NET の配列に

HashSet<T> を .NET の配列に変換するにはどうすればよいですか?

0 投票する
5 に答える
15849 参照

java - HashMapのキーからHashSetを取得しますか?

私はかなり大きい(10万のエントリ)を持っていますHashMap。今、私はこれからのHashSetすべてのキーを含む必要がありますHashMap。残念ながら、を返すメソッドHashMapしかありませんが、を返しません。keySet()SetHashSet

HashSetこのようなJavaを使用して生成する効率的な方法は何でしょうか。

0 投票する
6 に答える
11169 参照

java - HashSetは重複を許可します

HashSetインスタンスを期待どおりに動作させることができないようです。私が使用したコードは次のとおりです。

サブクラス

このコードは出力します

0 投票する
9 に答える
47902 参照

java - java.util.HashMapおよびHashSetの内部実装

java.util.HashMap私はとの内部実装を理解しようとしてきましたjava.util.HashSet

以下は、しばらくの間私の頭に浮かんだ疑問です。

  1. @Override public int hashcode()HashMap / HashSetでの重要性は何ですか?このハッシュコードは内部でどこで使用されていますか?
  2. 私は一般的に、HashMapのキーがのStringようになるのを見てきましたmyMap<String,Object>someObjectのように(文字列ではなく)値をマップできますmyMap<someObject, Object>か?これが成功するために私が従う必要があるすべての契約は何ですか?

前もって感謝します !

編集:

  1. キーのハッシュコード(チェック!)は、値がハッシュテーブルにマップされる実際のものであると言っていますか?そして、myMap.get(someKey);Javaが内部的に呼び出しsomeKey.hashCode()て、ハッシュテーブル内の数値を取得し、結果の値を探しますか?

回答:はい。

編集2:

  1. java.util.HashSet、ハッシュテーブル用に生成されたキーはどこからですか?追加するのはオブジェクトからですか。mySet.add(myObject);次にmyObject.hashCode()、これをハッシュテーブルのどこに配置するかを決定しますか?(HashSetではキーを提供しないため)。

回答:追加されたオブジェクトがキーになります。値はダミーです!

0 投票する
3 に答える
9064 参照

c# - WPF で ObservableCollection で HashSet を使用する

ListBox を使用して、WPF アプリケーションでアイテムのリストを維持しています。ListBox データ ソースは、ObservableCollection にラップされた HashSet です。つまり、次のコードがあります。

... shackListing は ListBox コントロールであり、shackSet は ICollection にあります。ただし、最初の項目を追加した後に shackSet に何かを追加すると、ListBox に複数の項目が表示されます。つまり、セットに追加されているかどうかに関係なく、新しく追加されたアイテムがリストに追加されているようです。ICollection#Add の署名を見ると:

...そして HashSet#Add :

...これにより、ラップされたHashSetに影響を与えるバグがあり、新しく追加されたアイテムがListBoxに追加されるというバグがあると思われます.ICollection#の戻り値の型追加は無効です。他の誰かがこれを確認できますか?

0 投票する
4 に答える
1017 参照

java - 私のクラスがJavaHashSetで正しく機能しないのはなぜですか?

私は自分HashSetが作成したクラスのを使用するプロジェクトに取り組んでいます。これに名前を付けTestます。私は次のように述べたものを定義しましたHashSet

使ってみました

しかし、それはを返しますfalse。しかし、私が使用するとき、HashSet<Character>それはうまくいくようです。以前の宣言を上書きしようとしましequalsたが、機能しませんでした。私は一人で去ろうとしequalsました、しかし私はまだ得falseました。私は自分が間違っていることを知る必要がありますか?

また、ハッシュ関数を編集せず、Test.equals(Object o)のみを変更しました。これは単純なプロジェクトであり、Javaのドキュメントにはo.equals(this)を使用すると記載されているため、使用する必要はないと思いました。

0 投票する
1 に答える
91 参照

hashset - 予約語 boolean を HashSet に変更するのに助けが必要

このコードは、予約語のブール形式です。

これを HashSet 形式に変換する必要がありますが、これにアプローチする方法がわかりません。どんな助けでも大歓迎です。

0 投票する
1 に答える
1713 参照

hashset - Javaを使用してテキストファイル内の単語の頻度を見つける

与えられた入力テキスト ファイルの内容全体を解析し、各単語をハッシュ セットに格納することができました。しかし今、この入力ファイルでこれらの各単語の頻度を見つける必要があります。どうすればよいかについての提案はありますか? :)