26

私は最近、Groovy のコレクションで使用された場合GStringImplの sと s の動作について読んでいます。String

これが false と評価される理由は理解しています...

"${'test'}".equals("test") == false

は契約の対称性要件によるものですが、すぐに評価できない.equals()理由があるのではないかと思っていました。だから、こんなことをしたら…GStringImplString

"${'someString'}"

を取得しません。たとえば、マップのキーとしてすぐに使用できるGStringImplプレーンな Java を取得するだけです。String

私はいくつかの回避策があることを知っています

String s = "${'someString'}"

ただし、このようなものは少し不便であり、Groovy の初心者にとって と の混同は大きな問題のようですGStringImplString

4

1 に答える 1