1.在程序中若出现字符串连接的情况。请使用StringBuffer取代String,这样能够降低多次创建String以及垃圾回收所带来的内存消耗
2.尽量使用局部变量。
调用方法时传递的參数以及调用中创建的暂时变量都保存在栈中,由于JVM是基于堆栈的虚拟机。所以优化了对堆栈的处理。并且,Static变量和类的实例变量都是在堆上创建的。因此使用局部变量的运行效率比使用Static变量和类的实例变量的运行效率要高
3.for(int i = 0 ; i<list.size() ; i++){
}
尽量使用以下的方式取代上面的方式
int count = list.size();
for(int i = 0 ; i<count ; i++){
}
原谅我可耻的mark行为吧:原文地址http://blog.youkuaiyun.com/zhaokaiqiang1992/article/details/26157109
这样能够降低非常多运算,比如我们以下的程序
package Test;
import java.util.ArrayList;
import java.util.List;
public class TestForFast {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
//创建包括大数据的集合
for (long i = 0; i < 1000000; i++) {
list.add("xixixi"+i);
}
long starttime1 = System.currentTimeMillis();
for(int i=0;i<list.size();i++) {
//运行一些操作
}
long endtime1 = System.currentTimeMillis();
System.out.println("第一种浪费的时间是:"+(endtime1-starttime1));
long starttime2 = System.currentTimeMillis();
int count = list.size();
for(long i=0;i<count;i++) {
//运行一些操作
}
long endtime2 = System.currentTimeMillis();
System.out.println("另外一种浪费的时间是:"+(endtime2-starttime2));
}
}