服务器之家

服务器之家 > 正文

Java中String性能优化

时间:2019-12-13 10:54     来源/作者:hebedich

不用使用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()。

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

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

标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
配置IIS网站web服务器的安全策略配置解决方案
配置IIS网站web服务器的安全策略配置解决方案 2019-05-23
Nginx服务器究竟是怎么执行PHP项目
Nginx服务器究竟是怎么执行PHP项目 2019-05-24
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
返回顶部