String str=new String("a")和String str = "a"有什么區別?


問:String str=new String("a")和String str = "a"有什么區別? 

答:String str = "a"; 這個只是一個引用,內存中如果有“a"的話,str就指向它;如果沒有,才創建它;
  如果你以后還用到"a"這個字符串的話並且是這樣用:
  String str1 = "a"; String str2 = "a"; String str2 = "a"; 這4個變量都共享一個字符串"a"。
  而String str = new String("a");是根據"a"這個String對象再次構造一個String對象,將新構造出來的String對象的引用賦給str。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM