打字猴:1.700451893e+09
1700451893
1700451894 //Do Something
1700451895
1700451896 }
1700451897
1700451898 应该替换为:
1700451899
1700451900 //只计算一遍
1700451901
1700451902 int total=count*2;
1700451903
1700451904 while(i<total){
1700451905
1700451906 //Do Something
1700451907
1700451908 }
1700451909
1700451910 (2)尽可能把变量、方法声明为final static类型
1700451911
1700451912 假设要将阿拉伯数字转换为中文数字,其定义如下:
1700451913
1700451914 public String toChineseNum(int num){
1700451915
1700451916 //中文数字
1700451917
1700451918 String[]cns={“零”,“壹”,“贰”,“叁”,“肆”,“伍”,“陆”,“柒”,“捌”,“玖”};
1700451919
1700451920 return cns[num];
1700451921
1700451922 }
1700451923
1700451924 每次调用该方法时都会重新生成一个cns数组,注意该数组不会改变,属于不变数组,在这种情况下,把它声明为类变量,并且加上final static修饰会更合适,在类加载后就生成了该数组,每次方法调用则不再重新生成数组对象了,这有助于提高系统性能,代码如下。
1700451925
1700451926 //声明为类变量
1700451927
1700451928 final static String[]cns={“零”,“壹”,“贰”,“叁”,“肆”,“伍”,“陆”,“柒”,“捌”,“玖”};
1700451929
1700451930 public String toChineseNum(int num){
1700451931
1700451932 return cns[num];
1700451933
1700451934 }
1700451935
1700451936 (3)缩小变量的作用范围
1700451937
1700451938 关于变量,能定义在方法内的就定义在方法内,能定义在一个循环体内的就定义在循环体内,能放置在一个try……catch块内的就放置在该块内,其目的是加快GC的回收。
1700451939
1700451940 (4)频繁字符串操作使用StringBuilder或StringBuffer
1700451941
1700451942 虽然String的联接操作(“+”号)已经做了很多优化,但在大量的追加操作上StringBuilder或StringBuffer还是比“+”号的性能好很多,例如这样的代码:
[ 上一页 ]  [ :1.700451893e+09 ]  [ 下一页 ]