码迷,mamicode.com
首页 > 其他好文 > 详细

代码优化

时间:2019-07-15 17:30:58      阅读:102      评论:0      收藏:0      [点我收藏+]

标签:区别   pre   col   main   运算符重载   ++i   class   new   print   

1. 减少对变量的重复计算和对变量的定义

对于For循环,如果能通过Java8中的Stream流表达式解决那就最好了,如果非要使用For循环,应该尽量减少对变量的重复计算和减少对变量的定义。

public class OptimizingCode {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("a");
        list.add("b");
        list.add("c");
        list.add("d");
        for (int i = 0; i < list.size();  i++) {
            System.out.println(list.get(i));
        }
        System.out.println("----------------优化-----------------");
        //优化为
        for (int i = 0, length = list.size(); i < length; ++i) {
            System.out.println(list.get(i));
        }

    }

}

优化点有两个:
1)先算出length的大小,这样list.size()只会调用一次,减少性能消耗。
2)使用++i替换原来的i++,在For循环中++i和i++对结果是没有区别,两者不同的地方在于++i 占用的空间比 i++ 要小,i++是多定义一个变量的,看看运算符重载可以知道是怎么回事。

int i=1; int a = i++; int a = ++i;

这时才有区别,第一个a1,第二个a2。



代码优化

标签:区别   pre   col   main   运算符重载   ++i   class   new   print   

原文地址:https://www.cnblogs.com/liaowenhui/p/11189545.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!