.equals()
2 つの文字列をmethod と equalsで比較してみsign(==)
ました。しかし、時々、両方が同じ答えを返します。これを解決するにはどうすればよいですか?
質問する
114 次
1 に答える
4
基本的に、interned 文字列について知っておくべきことが 2 つあります。
ただし、細かい点がいくつかあります。
- コンパイル時の定数文字列の連結もコンパイル時の定数であるため、たとえば、の結果
"foo"+"bar"
は (インターンされた) 定数 String"foobar"
です。 - このメソッドは、それが返すcopy
intern()
をインターンします。元の文字列は「interned string pool」に追加されません。 - インターンされた文字列はガベージ コレクションできません。実際には使用しない文字列をインターンすると、メモリ リークが発生します。
于 2013-06-21T19:13:13.473 に答える