QA@IT

Java:toStringとコンスタントプール

5202 PV

次のプログラム(抜粋)について質問します。

StringBuilder sb = new StringBuilder("A");
String a = sb.toString();
String b = "A";
System.out.println(a==b);

これはfalseになるようです。

コンスタントプールが
働けば同一になるのではないかと思います。
toStringが影響しているのでしょうか?

何故falseになるのか
解説をお願いできますか?

回答

String(クラス)を比較する場合は、equalsメソッドを使用して比較してください。ネットで"java 文字列の比較"などで検索すれば情報があると思います。

編集 履歴 (0)

そもそも、StringBuilderクラスで扱われる文字列は、定数(コンスタント)ではありません。

編集 履歴 (0)
ウォッチ

この質問への回答やコメントをメールでお知らせします。