1.字符串切割的优化
字符串切割,经常使用的方法是split(),但是其性能不太好,建议使用indexOf()和subString()结合使用,能够大大提高效率,split()内部采用的正则表达式来操作的,因此:当进行简单切割的时候尽量用indexOf()和subString()结合使用,实在是特别复杂了,需要用到正则了,再用split()
2.字符串拼接的优化
常用的字符串拼接方法有+"",append(),其中append()又分为StringBuilder和StringBuffer的append(),append()的效率远远高于+"",StringBuilder的效率又比StringBuffer的效率高,究其原因还是因为StringBuilder是非线程安全的,StringBuffer是线程安全的,线程安全的效率当然低点。故字符串拼接的时候选择append(),尽量不用+"",当不考虑线程安全的前提下使用StringBuilder,考虑的情况下使用StringBuffer
3.基本数据类型转换为字符串的优化
基本类型转换为字符串的方法有:String.valueOf(),toString(),+""。
例如将一个int类型的数据转换成String,int a = 5;
String.valueOf()会直接调用底层Integer.toString(),但调用前会先判断是否为空;+""会先调用StringBuilder的append()方法,然后调用toString()方法;toString()会直接调用Integer.toString()方法。故toString()效率最高,String.valueOf()其次,+""的效率最低。所以建议避免使用+"",直接使用基本数据类型的toString()方法。
平时工作中虽然这些都能用,但是若碰到数据量比较庞大的时候,就会出现效率问题,因此还是多注意程序的效率问题,避免低效率问题。