JAVA性能优化

来源:互联网 发布:python系统监控 编辑:程序博客网 时间:2024/05/29 15:54

本文抄袭于:点击打开链接  (建议去阅读一遍,写的很详细)

1、

将  for (int i = 0; i < list.size(); i++){...}

修改为  for (int i = 0,length = list.size(); i < length; i++) {...}

减少对变量的重复计算


2、

将  for (int i = 1; i <= count; i++){
      Object obj = new Object();
      }

修改为

 Object obj = null;for (int i = 0; i <= count; i++) { obj = new Object(); }

不要在循环内不断创建对象引用


3、

将 String str = "aaa";

     if (i == 1){

       list.add(str);
     }

修改为  

if (i == 1){
String str = "aaa";
list.add(str);
}

懒加载在需要的时候再创建


4、

将   String str = "123";
     if (str.equals("123")) {
      ...
     }

修改为

String str = "123";
if ("123".equals(str)){
...
}

字符串变量和字符串常量equals的时候将字符串常量写在前面


5、

try{

XXX.close();
YYY.close();

}catch (Exception e){
...
}

修改为

try{ XXX.close(); }catch (Exception e) { ... }

try{ YYY.close(); }catch (Exception e) { ... }

避免资源泄露


6、把一个基本数据类型转为字符串,基本数据类型.toString()是最快的方式、String.valueOf(数据)次之、数据+””最慢


7、顺序插入和随机访问比较多的场景使用ArrayList,元素删除和中间插入比较多的场景使用LinkedList


8、基于效率和类型检查的考虑,应该尽可能使用array,无法确定数组大小时才使用ArrayList

原创粉丝点击