Java に完全に空の文字列プールがあり、次の操作を行った場合、文字列オブジェクト 'Hello' が文字列プールに追加されますか?
String myStr = new String('Hello');
new String('Hello'); への後続の呼び出しを知っています。新しい文字列オブジェクトを作成しますが、プールには追加しませんが、'Hello' がまだプールにない場合はどうなるでしょうか?
編集: 基本的に、次の出力が false である理由を知る必要があります。
String myStr = new String("Hello");
print(myStr=="Hello");
If, first call, new String("Hello"); Hello をプールに追加します。次に、比較コードで、プール常駐オブジェクト 'Hello' をリテラル 'Hello' (== の右側) と比較しています。したがって、== の左側は右側と同じ (プール内の) オブジェクトを指しているのではないでしょうか?