欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java中String性能优化

程序员文章站 2024-03-02 13:05:28
不用使用string的构造函数,可能的话直接使用字符串。 两个特例: 1)想把char []转换为一个string, 2) 使用一个大的string对象的subst...

不用使用string的构造函数,可能的话直接使用字符串。

两个特例:

1)想把char []转换为一个string,
2) 使用一个大的string对象的substring()方法;

string.equals() 比 string.equalsignorecase()要快;

尽量使用stringbuilder来构造一个string,而不是“+”操作符和string.concat() (除非是一个表达式,string s = a + b + c);

stringbuilder是不同步的(not synchronized ),所以要比stringbuffer快;

在string[buffer|builder]构造函数中加上容量参数,因为创建一个太小的buffer会降低性能;

string.length()==0比string.equals("")要快。使用java 6时,string.isempty()更快;

调用string.tostring()是没有意义的;

由于string是不可变的,所以string的方法中,所有返回修改过的string的都是返回了一个新的实例;

string.split(regex)事实上简单的调用了pattern.compile(regex).split(this, limit),且每次compile()都会返回一个新pattern。所以如果频繁调用split的话,最好创建单个pattern实例并重复使用来取代split()。

以上就是本文要给大家分享的内容了,希望大家能够喜欢。

请您花一点时间将文章分享给您的朋友或者留下评论。我们将会由衷感谢您的支持!