Javaは強力な静的キャストであるため、「===」は使用できないことを意味します
私はたくさんのドキュメントを見てきましたが、同一比較演算子を見たことがありません。
===
比較されるオブジェクトが同じ型であることを確認し、暗黙的な変換を回避するため、Javascript などの弱い型付け言語で役立ちます。
===
これを行うための特定のメソッドを作成しないと、異なる型の変数を比較できないため、Java などの厳密に型指定された言語ではまったく役に立ちません。
たとえば、 inと anint
を比較したい場合、次のような特別なメソッドを作成する必要があります。String
Java
boolean compareIntString(int i, String s) {
return (i == parseInt(s));
}
しかし、これはかなりやり過ぎです。(そして、書かれているように、このメソッドは anint
と aのみを受け入れString
ます。任意の 2 つの変数だけを受け入れるわけではありません。呼び出す前に、データ型が異なることがわかります。)
要点は、 ではできるがi == s
ではJavascript
できないのでi == s
、Java
は必要ないということです===
。
簡単に言えば、はJava
です。をエミュレートし、データ型を無視して 2 つの項目を比較する場合は、一般的なデータ型を引数として受け入れるカスタム メソッドを作成する必要があります。のプリミティブ データ型の組み合わせ...==
Javascript
===
Javascript
==
Java
===
Java には演算子がありません。理由はnhgrifによってかなりよく説明されています。以下は、Java の演算子とその優先順位のリストです。
ソース: http://docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html