为了账号安全,请及时绑定邮箱和手机立即绑定

Java 捕获错误并继续运行到下一个

Java 捕获错误并继续运行到下一个

Helenr 2021-12-01 18:54:02
我找不到让我的程序在捕获并出错后继续运行的方法。例如,我有:String[] num={"1","2","3","NotNumber","4","5"};我想全部转换为整数,所以num[3]无效,但我想继续运行num[4]并num[5]在它捕获错误之后。我该怎么做?
查看完整描述

2 回答

?
浮云间

TA贡献1829条经验 获得超4个赞

将try-catch块放在您的迭代中


爪哇7


List<Integer> intList = new ArrayList<>();

for(String s : num) {

  try {

    Integer n = Integer.valueOf(s);

    intList.add(n);

  } catch (Exception ex) { continue; }

}

JAVA 8 流


List<Integer> intList = Arrays.asList(num)

  .stream()

  .map(s -> {

    try {

      return Integer.valueOf(s);

    } catch(Exception ex) { return null;}

  })

  .filter(i -> i != null)

  .collect(Collectors.toList());


查看完整回答
反对 回复 2021-12-01
?
慕少森

TA贡献2019条经验 获得超9个赞

如果您已经展示了迄今为止您尝试过的内容,那将会有所帮助,但最简单的解决方案是将您int.parse()的内容包装在一个try/catch块中并吞下异常。


for(int i = 0; i < items.length; i++) {

    try {

        newItems[i] = Itemger.parseInt(items[i]);

    catch(Exception ex) {

        // do nothing

    }

}


查看完整回答
反对 回复 2021-12-01
  • 2 回答
  • 0 关注
  • 376 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信