-1

请告知以下是从字符串中提取前 4 个字符的代码,如下所示。

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

我可以把它包装成一个,这样就不需要创建额外的 String s,最后 string external 将一次性有四个初始字符

4

2 回答 2

3

好吧,你总是可以链接方法调用......

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

...但这并不意味着不会创建额外的字符串,从 Java 7u6 开始,该substring()方法将返回一个新String分配的新对象char[](参见这篇文章)。您只是消除了一个中间局部变量,仅此而已。

于 2013-09-24T14:56:22.930 回答
0

无论如何都会创建相同的字符串。编译器无论如何都会优化它。否则@ZouZou 的评论是正确的。

String external = ak.getReference().substring(0,4);
于 2013-09-24T14:58:21.070 回答