【309天】我愛刷題系列068(2017.12.11)

叨叨兩句

  1. 對於如今的我,早睡的關鍵是把每一件事提早1小時完成。

牛客網——java專項練習047

1

有以下一段代碼,請選擇其運行結果()java

public class StringDemo{
  private static final String MESSAGE="taobao";
  public static void main(String [] args) {
    String a ="tao"+"bao";
    String b="tao";
    String c="bao";
    System.out.println(a==MESSAGE);
    System.out.println((b+c)==MESSAGE);
  }
}

正確答案: Ccode

  1. true true
  2. false false
  3. true false
  4. false true
要注意兩個問題:
1,字符串在java中存儲在字符串常量區中
2,==判斷的是對象引用是不是同一個引用,判斷字符串相等要用equals方法
首先判斷a==MESSAGE 同一份字符串常量在內存中只有一份,所以是同一地址,返回true
再次比較(b+c)==MESSAGE 這至關於 new String(b+c)==MESSAGE 這裏new了一個String對象,因此返回false
相關文章
相關標籤/搜索