問題タブ [equatable]
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.
core-location - CLLocationCoordinate2D を比較するにはどうすればよいですか
2 つの を比較する方法が必要ですが、CLLocationCoordinate2D
使用しようとするとうまくいき==
ません。誰かがそれらを比較する最良の方法で私を助けてくれませんか?
swift - DictionaryはSwiftでEquatableプロトコルをどのように使用しますか?
この質問を解決するために、Hashable Protocol を実装するカスタム構造体をいじってみました。==
を入力するときにハッシュ衝突があるかどうかに応じて、等価演算子オーバーロード()が呼び出される回数を確認しようとしていDictionary
ます。
アップデート
@mattは、Hashable プロトコルを実装し、どのくらいの頻度hashValue
で==
呼び出されるかを示すカスタム構造体のよりクリーンな例を書きました。以下に彼のコードをコピーしています。私の元の例を見るには、編集履歴をチェックしてください。
これにより、次の結果が生成されます。
Hashable は Equatable を使用してハッシュの衝突を区別するため (とにかくだと思います)、func ==()
ハッシュの衝突が発生した場合にのみ呼び出されることを期待します。ただし、上記の @matt の例ではハッシュの衝突はまったくなく、まだ==
呼び出されています。ハッシュの衝突を強制する他の実験 (この質問の編集履歴を参照) では==
、ランダムな回数呼び出されたようです。
ここで何が起こっているのですか?
swift - Swift プロトコルが Equatable を実装
私は以下を持っていますProtocol
:
Cacheable
実装を Equatableにすることはできますか?
私が次のことをするとき:
次のエラー メッセージが表示されました:プロトコルの拡張にCacheable
は継承句を含めることはできません
swift - PFObject の等価性の設定
Swiftでequatableを設定するとエラーが発生します
次のエラーの下に
プロトコル「Equatable」への「PFObject」の冗長適合
このエラーの解決策はありますか?
ios - カスタム オブジェクトのセット (Swift) を作成するにはどうすればよいですか?
私のiOSアプリには、次のようなモデルがあります
その後ViewController
、サーバーからデータをロードするときに、配列に人を追加します
私が今やろうとしているのは、people
配列をに変えて、Set<Person>
重複を追加しないようにすることです。これは可能ですか、それともロジックを変更する必要がありますか?
ios - ジェネリック型の制約付き配列パラメーターの変数を迅速に解決する
与えられた
なぜこれがコンパイルされるのですか:
しかし、これにより、「タイプ '(NSArray)' の引数リストで 'wasCalled' を呼び出すことはできません」が生成されます。
同様に
使用: Xcode 7 ベータ 6、Swift 2
ios - Swift: AnyObject としてキャストされたオブジェクトが Equatable に準拠しているかどうかをテストする方法はありますか?
キー付きのプロパティを持つオブジェクトがあります。
value
2 つの異なるオブジェクトから同じキーを持つ関数から返された値が であるかどうかを確認したいと思いますEquatable
。参照があり、ジェネリックでのみ使用できるためEquatable
、Swift は文句を言います。関数から返されたオブジェクトが準拠しているかどうSelf
かを確認する方法はありますか?AnyObject
value
Equatable
swift - 引数付きのSwift列挙型:それらを比較する方法は?
私は次の列挙型を持っています:
メッセージ列挙型を比較できる Equatable 関数を作成する方法を見つけようとしています。
スタック オーバーフローに関する同様の質問をいくつか見つけましたが、すべてのケースをオンにしなくても比較できるような質問は見つかりませんでした。
この列挙型にさらにケースを追加し続けても、equatable 関数を 1 回記述して機能させる方法はありますか?