2013-09-24 38 views
-1

請指教下面是代碼以提取字符串中的前4個字符,如下圖所示..從字符串中抽取初始字符一個去

String external = ak.getReference();  
String s= external.substring(0,4); 

我可以換到一個這個所以沒有多餘的要創建的字符串的需要,最後串外部將有四個初始字符一個去

+5

'String external = ak.getReference()。substring(0,4);'? –

+1

由額外的字符串,你的意思是額外的字符串引用,或字符串對象?以後是不可能的。 –

回答

3

好了,你可以隨時鏈中的方法調用...

String s = ak.getReference().substring(0,4); 

...但是,這並不意味着THA將不會創建額外的字符串,從Java 7u6開始,substring()方法將返回一個新的String對象,其中包含新分配的char[](請參閱此post)。你只是消除了一箇中間局部變量,就是這樣。

0

無論發生什麼,都會創建相同的字符串。無論如何,編譯器都會進行優化。否則@鄒鄒的評論是正確的。

String external = ak.getReference().substring(0,4); 
相關問題