問題タブ [containskey]
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 - 値のない Java ハッシュマップ?
単語をデータ構造に入れたいとしましょう。単語がこのデータ構造に含まれているかどうかを確認するために一定時間ルックアップを行いたいとします。私がやりたいのは、単語が存在するかどうかを確認することだけです。HashMap
これには(containsKey()) を使用しますか? HashMap
キーと値のペアリングを使用しますが、私の場合は値がありません。もちろん、値に null を使用することもできますが、null でもスペースを取ります。このアプリケーションには、より優れたデータ構造が必要なようです。
コレクションは複数のスレッドで使用される可能性がありますが、コレクションに含まれるオブジェクトは変更されないため、同期/同時実行の要件はないと思います。
誰でも私を助けることができますか?
c# - カスタム クラスがディクショナリのキーとして使用されていますが、キーが見つかりません
以下に示すクラスがあり、Dictionary<ValuesAandB, string>
このディクショナリ内でキーを見つけようとすると問題が発生し、まったく見つかりません。ご覧のとおり、 and をオーバーライドEquals
しGetHashCode
ました。
使用しているキーを探すには
私が見逃しているものは他にありますか?誰かが私が間違っていることを指摘できますか?
そして、誰かが尋ねる前に、はい、値はディクショナリにあります!
java - Java TreeMap containsKeyは常にtrueを返しますか?
TreeMapインターフェースを使用するJavaプログラムを作成していますが、containsKeyに問題があります。確かにTreeMapにないことがわかっているcontainsKeyを指定しても、trueが返されます。
これの原因は何でしょうか?
よろしくお願いします。
-
編集:テキストファイル内の単語の出現をカウントするプログラムを書いています。単語は解析され、それぞれがクラスの新しいインスタンスになります。これらのクラスでは、単語が異なるオブジェクトであっても、単語を等しいものとして扱う必要があるため、equalsメソッドとhashCodeメソッドがオーバーライドされます。
フィールド「text」は、単語のテキストを含む文字列です。
c# - アイテムが追加された後、ディクショナリは、ContainsKey で false を返します
次のように宣言された辞書があります
私はそれでいくつかの問題を経験していました.ContainsKeyメソッドの結果としてインスタンスがfalseを返したことを発見し、ウォッチウィンドウからアイテムがそこにあると確信していました. だから私はヘルパーメソッドを作成しました
デバッグ セッション中に、メソッドが場所 B で終了し、場合によっては C に true を返す状況に遭遇しました。誰でも私を助けることができますか?ありがとう。
java - containsKey がキーを見つけられなかったのはなぜですか?
次のコードがあります。
「いいえ」を出力します。つまり、キーと値のペアをマップに追加し、その直後にキーが存在するかどうかを確認し、存在しないことを確認します。なんで?
鍵に関してはまだ悩んでいます。次のコードは、キーを追加するたびに新しいキーを追加することを示しています。そして、私はそうではないことを知っています。
java - Java HashMap.containsKey()はequals()を呼び出さない
私はハッシュマップを持っています:
のコードLotWaferBean
:
私のIDEでは、ブレークポイントを設定しましequals()
たが、実行されません。なんで?
java - String をキーとして HashMap containsKey() が失敗する原因は何ですか?
私はこれに完全に混乱しています。単体テストに相当する完全なパッケージを実行しています。以下は、多くの JUnit テストで使用される関連する共有コードです。
JUnit 実行のコンソール出力には、次の 2 つの連続するエントリが含まれます。
私は何が欠けていますか?jaxbContexts.containsKey()
JUnit 実行中の他の 46 回とは異なり、このインスタンスで文字列ベースのキーが機能しなかったのはなぜですか? テストを並行して実行していませんが、違いが生じる場合はアスペクトを使用します。
c# - C#辞書ContainsKey
私の問題は、ContainsKeyがキーが追加されていても、常にfalseを返し、.Equalsがtrueと評価されることです。
私は次のクラスを持っています:
次に、次のような辞書があります。
wcf - WCF サービスは、辞書の大文字と小文字を区別するプロパティをリセットします
私は辞書を持っています。このディクショナリでは、Containskey() メソッドを大文字と小文字を区別しないものとして使用することが最も重要です。そのため、コンストラクタを使用して大文字と小文字を区別しません。
私はそれをWCFサービスメソッドに送信して、入力して返します。それは正常に動作しますが、大文字と小文字を区別するプロパティは大文字と小文字を区別するようにリセットされ、作成時にのみ設定されるため、元に戻すことはできません。
私はいつでも配列を使用して WCF からデータを取得し、ディクショナリを埋めることができます。また、結果のディクショナリを大文字と小文字を区別しない別のディクショナリにいつでもコピーできますが、プロパティのリセットの問題を解決するにはどうすればよいですか?
c# - Dictionary ContainsKey が string[] キーで機能しないようです
複数の文字列キーを持つデータ構造を作成しようとしています。これを行うために、string[] 要素を使用して Dictionary を作成しようとしました。しかし、ContainsKey は期待どおりに機能していないようです。
上記のコードを実行すると、aaa にエントリが 2 つあることがわかりますが、1 つしかないと思っていました。これは予想される動作ですか?ディクショナリに重複エントリがないことを確認するにはどうすればよいですか?
注:リストでも同じことを試しました(リストと結果は同じです-Containsメソッドはstring []では実際には機能しません)