ご覧頂きありがとうございます。
以下、質問です。
質問
String型、StringBuilder型の両方に"A"参照を格納し、equalsで"A"と比較を行うと、StringBuilder型のみfalseが返ります。
equalsは「同値かどうかを見る」という認識の為、どちらもtrueになると予測していました。
「xxx.equals("A")」の"A"はString型と判定されるため、型が同じString型の「str」とは一致、StringBuilder型の「sb」とは不一致、という事でしょうか?
また、「sb」との同値判定はどう行うのでしょうか?
コード例と結果
java
1public class Sample{ 2 public static void main(String[] args) { 3 4 String str = new String("A"); 5 StringBuilder sb = new StringBuilder("A"); 6 7 // String と "A" 8 if(str.equals("A")) { 9 System.out.println(true); 10 } 11 else { 12 System.out.println(false); 13 } 14 15 // StringBuilderと "A" 16 if(sb.equals("A")) { 17 System.out.println(true); 18 } 19 else { 20 System.out.println(false); 21 } 22 } 23}
java
1結果 2true 3false
回答6件
あなたの回答
tips
プレビュー