一次性从字符串中提取初始字符

时间:2013-09-24 14:55:21

标签: java string

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

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

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

2 个答案:

答案 0 :(得分:3)

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

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

...但这并不意味着不会创建额外的字符串,从Java 7u6开始,substring()方法将返回一个新的String对象,其中新分配{{1 (见post)。你只是消除了一个中间局部变量,就是这样。

答案 1 :(得分:0)

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

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