Groovy docsによると、これは次のことも回避するため==
、単なる「賢い」ものです。equals()
NullPointerException
Java のメソッド
==
は実際には Groovy のis()
メソッドであり、 Groovy のメソッド==
は賢いequals()
![...]
しかし、通常の比較を行うには、左または右がそうであるかどうかに関係なく、
equals()
Groovy の を優先する必要があります。==
NullPointerException
null
そのため、オブジェクトが null でない場合、==
andequals()
は同じ値を返す必要があります。ただし、次のスクリプトを実行すると予期しない結果が得られます。
println "${'test'}" == 'test'
println "${'test'}".equals('test')
私が得ている出力は次のとおりです。
true
false
これは関連する既知のバグGStringImpl
ですか、それとも私が見逃しているものですか?