2014-09-29 84 views
0

有一個下面提到的代碼,我只想知道將創建多少個對象。字符串常量池對象cardianality

String s1 = "a"; 
String s2 = "b"; 
String s3 = "c"; 
String s4 = "abc"; 

,如果以下是siuation然後

String s1= "abc" 
String s2= "ab" 
+1

*你認爲什麼? – 2014-09-29 10:13:00

+4

第一個案例中有4個對象,第二個案例中有2個。如果你認爲''ab'''會從''abc''中取出,那麼你錯了。 – TheLostMind 2014-09-29 10:13:02

+1

只要數一數,第一個是4,第二個是2。請記住,在Java中,字符串是不可變的! – Alboz 2014-09-29 10:13:22

回答

0

總4個對象的第四根弦和2個對象爲下一個2名的字符串將被創建,除非它具有如下的值相同:

String s1 = "ab"; 
String s2 = "ab"; 
String s3 = "abc"; 
在上面的代碼獲得

只創建2個對象

我希望這WIL l幫你

+0

@santosh dude你沒有得到我的問題,我只是知道無論是否在內部執行操作 – 2014-11-04 10:57:35