回覆列表
  • 1 # 程式設計頌

    關於字串String賦值,String a="123", 這種方式比String a = new String("123");效率高多了。後者其實會建立兩個物件。 "123"是一個常量池裡的物件,new出來的物件是存放在記憶體堆中的,new出來的又是一個物件。

    String a = "aaa";

    用這種方式的時候java首先在記憶體中尋找"aaa"字串,如果有,就把aaa的地址給它

    如果沒有則建立

    String a = new String("aaa");

    是不管記憶體中有沒有"aaa"

    都開闢一塊新記憶體儲存它

    可以用以下方法驗證下

    String a = "aaa";

    String b = "aaa";

    String c = new String("aaa");

    System.out.println(a==b);

    System.out.println(a==c);

    結果應該是:

    true

    false

  • 中秋節和大豐收的關聯?
  • 大話西遊手遊仙族用念好不好,念學什麼技能加點?