用好IDEA中的异常断点,省时省力

啥情况

有没有发现,一个大循环中,某个变量空指针了,但是异常堆栈只有该行的信息,并不知道是哪个变量、什么情况NPE的,郁闷吧;加个断点一次次循环的跟,要是有几十上百次的循环呢,你跟的住么?比如下面的代码

public class CommonTest {
    @Test
    public void testException(){
        Integer[] arr = IntStream.rangeClosed(1,10).boxed()
            .toArray(Integer[]::new);
        // 便于暴露问题
        arr[6]=null;
        for (Integer s : arr) {
            System.out.println(s.toString());
        }
        System.out.println("exit");
    }
}

运行后只能获得这样的异常信息:
异常

怎么破

其实神器IDEA有一个强大的断点类型:异常断点。就是在程序出现指定的异常时,自动断点,无论在哪里,这个时候debug可以看清所有的情况,按图设置:
这里写图片描述
这里选择出现哪种异常时debug
这里写图片描述
这个时候再用debug跑一遍,惊不惊喜,意不意外^_^
这里写图片描述
IDEA是个很牛逼的神器,有很多方便的功能,我们需要好好利用这个工具,提高我们解决问题的效率。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值