百知教育吧 关注:122贴子:1,645
  • 1回复贴,共1

Java代码技巧

只看楼主收藏回复

在Java开发中,经常使用try-catch进行错误捕获,但是try-catch语句对系统性能而言是非常糟糕的。虽然一次try-catch中,无法察觉到她对性能带来的损失,但是一旦try-catch语句被应用于循环或是遍历体内,就会给系统性能带来极大的伤害。
以下是一段将try-catch应用于循环体内的示例代码


1楼2020-11-12 15:41回复
    @test public void test11() { long start = System.currentTimeMillis(); int a = 0; for(int i=0;i<1000000000;i++){ try { a++; }catch (Exception e){ e.printStackTrace(); } } long useTime = System.currentTimeMillis()-start; System.out.println("useTime:"+useTime); }
    上面这段代码运行结果是:
    useTime:10
    下面是一段将try-catch移到循环体外的代码,那么性能就提升了将近一半。如下:
    @Test public void test(){ long start = System.currentTimeMillis(); int a = 0; try { for (int i=0;i<1000000000;i++){ a++; } }catch (Exception e){ e.printStackTrace(); } long useTime = System.currentTimeMillis()-start; System.out.println(useTime); }
    运行结果:
    useTime:6


    2楼2020-11-12 15:42
    回复