java代码优化要点

博客介绍了Java代码性能优化的要点,包括嵌套循环遵循外小内大原则,提取循环内与循环无关的表达式,消除循环终止判断时的方法调用,避免将异常捕获放在for循环内,以及尽量不在循环中调用数据库,数据量不大时可先查询再处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.嵌套循环

外小内大原则

2.循环内提取与循环无关的表达式
stratTime = System.nanoTime();  
for (int i = 0; i < 10000000; i++) {  
    i=i*a*b;  
}  
endTime = System.nanoTime();  
System.out.println("未提取耗时:"+(endTime - stratTime));  

stratTime = System.nanoTime();  
c = a*b;  
for (int i = 0; i < 10000000; i++) {  
    i=i*c;  
}  
endTime = System.nanoTime();  
System.out.println("已提取耗时:"+(endTime - stratTime));  
3.消除循环终止判断时的方法调用
stratTime = System.nanoTime();  
for (int i = 0; i < list.size(); i++) {  
      
}  
endTime = System.nanoTime();  
System.out.println("未优化list耗时:"+(endTime - stratTime));  

stratTime = System.nanoTime();  
int size = list.size();  
for (int i = 0; i < size; i++) {  
      
}  
endTime = System.nanoTime();  
System.out.println("优化list耗时:"+(endTime - stratTime));  

list.size()每次循环都会被执行一次,这无疑会影响程序的性能,所以应该将其放到循环外面,用一个变量来代替,优化前后的对比也很明显。

4.异常捕获

不要把异常捕获放在for循环内
try catch是非常耗资源的

5.数据库调用

尽量不要在循环中调用数据库,如果数据量不是超过1000条以上的情况下,可以在循环外先查询出所有数据,之后再进行处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值