30秒搞定String面試

Java 語言中,不管新菜鳥,仍是老司機,真正瞭解String內存的不多。關於String 的試題,花樣不少。== 在什麼狀況下是true,什麼狀況是false。我總結出以下3點讓你完全結束對String的模糊感。不管怎麼變化,都離不開如下3種類型:app

一、常量池存取(同一引用):ui

  String  str="a";  或 String str="a"+"b";(編譯後:"ab")spa

二、堆內存構建(新對象):對象

  String  str=new String("1");內存

三、引用拼接(相似於StringBuild 的 append,每次拼接都產生新的對象):編譯

      String  str1="a";引用

      String  str2="b";總結

      String  str3=new String("c");語言

   String  str4=new String("c");co

      String  strs1=str1+str2;   或  str1+="a";    或 String strs2=str1+str3; 或 String strs5=str3+str4 ....... 

相關文章
相關標籤/搜索