問題タブ [equality]
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.
python - Pythonクラスで同等性(「同等性」)をサポートするエレガントな方法
==
カスタムクラスを作成する場合、 and!=
演算子を使用して同等性を許可することが重要な場合がよくあります。Pythonでは、これはそれぞれ__eq__
と__ne__
特別なメソッドを実装することで可能になります。これを行うために私が見つけた最も簡単な方法は、次の方法です。
これを行うためのよりエレガントな方法を知っていますか?上記のsを比較する方法を使用することの特定の欠点を知っています__dict__
か?
注:少し説明します。__eq__
と__ne__
が未定義の場合、次の動作が見られます。
つまり、実際に実行されるため、同一性のテスト(つまり、「同じオブジェクトは?」)にa == b
評価されます。False
a is b
a
b
とが定義される__eq__
と__ne__
、次の動作が見つかります(これは私たちが求めているものです)。
objective-c - Objective-C では、Java の「instanceof」キーワードに相当するものは何ですか?
someObject
オブジェクト (例: ) が別の型の変数 (例: ) に割り当て可能 (キャスト可能)かどうかを確認したいと思いますSpecifiedType
。Java では、次のように記述できます。
関連する質問は、オブジェクトの実行時の型が別の型と等しいかどうかを調べることです。Java では、次のように記述できます。
Objective-Cでこれを行うにはどうすればよいですか?
syntax - Common Lispのeq、eql、equal、equalpの違いは何ですか?
Common Lispのeq
、eql
、equal
およびの違いは何ですか? equalp
それらのいくつかはタイプをチェックし、いくつかはタイプ全体をチェックすることを理解していますが、どれがどれですか? 他のものよりも使いやすいのはいつですか?
c# - Double.NaN との等価性
私は次のコードを持っています...
どの出力:
何を与える?
Double.NaN を使用して、値が存在しないことを示し、出力すべきではありません。
php - php == vs === 演算子
PHP の == と === の違いは何ですか。いつ両方を使用するかはわかりません。
更新されたメモ: StackOverflow 検索に表示されるように、== と === の違いは != と !== の違いと同じです。
java - 文字列の等価性と位置の等価性
//
true
true
false
true を出力
3 つすべてが同じ内容を持っている場合、すべての文字列がメモリ内で同じ場所にないのはなぜですか?
c# - 式が 2 つあるかどうかを確認する方法> 同じです
2 つの式が同じかどうかを調べることはできますか?
次の 4 つの式が与えられた場合のように:
次に、少なくとも次のことがわかります。
a == b
a != c
a != d
しかし、コードでこれを見つけるために何かできるでしょうか?
msdn ライブラリをのぞいてみると、次のように書かれています。
Equals
: 指定された Object が現在の と等しいかどうかを判断しますObject
。(から継承Object
。)
これは、少なくとも Expression クラスが equals メソッドをオーバーライドして Equatable になっていないことを意味していると思いますか? それで、あなたはこれをどのようにしますか?それとも、私はここであまりにも多くを求めていますか? :p