当前位置: 首页 > 编程笔记 >

如何在Java中处理ArithmeticException(未选中)?

包承望
2023-03-14
本文向大家介绍如何在Java中处理ArithmeticException(未选中)?,包括了如何在Java中处理ArithmeticException(未选中)?的使用技巧和注意事项,需要的朋友参考一下

java.lang.ArithmeticException是一个未经检查的异常在Java中。通常,会遇到java.lang.ArithmeticException:/零,这是在尝试将两个数字相除分母中的数字为零时发生的ArithmeticException 对象可以由JVM构造。

例1

public class ArithmeticExceptionTest {
   public static void main(String[] args) {
      int a = 0, b = 10;
      int c = b/a;
      System.out.println("Value of c is : "+ c);
   }
}

在上面的示例中,由于分母值为零,  所以发生了ArithmeticExeption 

  • java.lang.ArithmeticException:java在除法期间抛出的异常。

  • /零:是在创建ArithmeticException对象时提供给ArithmeticException 类的详细消息。

输出结果

Exception in thread "main" java.lang.ArithmeticException: / by zero
      at ArithmeticExceptionTest.main(ArithmeticExceptionTest.java:5)


如何处理ArithmeticException

让我们使用try和catch块处理ArithmeticException 

  • 将可以引发ArithmeticException的语句括 try和catch块中。

  • 我们可以抓住 ArithmeticException

  • 对我们的程序采取必要的操作,因为执行不会 中止

例2

public class ArithmeticExceptionTest {
   public static void main(String[] args) {
      int a = 0, b = 10 ;
      int c = 0;
      try {
         c = b/a;
      } catch (ArithmeticException e) {
         e.printStackTrace();
         System.out.println("We are just printing the stack trace.\n"+ "ArithmeticException is handled. But take care of the variable \"c\"");
      }
      System.out.println("c的值:"+ c);
   }
}

当一个异常 发生时,执行下降到捕获 块 从异常发生的点。它在catch块中执行该语句,并继续在 try和catch 块之后出现的语句。

输出结果

We are just printing the stack trace.
ArithmeticException is handled. But take care of the variable "c"
Value of c is : 0
java.lang.ArithmeticException: / by zero
        at ArithmeticExceptionTest.main(ArithmeticExceptionTest.java:6)
 类似资料:
  • 问题内容: 如何用Java 处理? 问题答案: 我不确定“句柄”是什么意思。 您当然可以捕获该错误: 但这很可能是个坏主意,除非您确切地知道自己在做什么。

  • 问题内容: 谁能帮我找到执行的地方?我似乎找不到问题。 startTime变量是全局变量。 编辑:timeinSecs = 0如何?我似乎无法让调试器为BlackBerry JDE工作,所以有人将不得不帮助我:( timeTaken应该是从按下启动按钮的点到按下停止按钮的点所花费的时间,以毫秒为单位。 所有其他变量也是全局的 问题答案: 异常具有类型,这允许您查找类型并快速对问题进行分类。从文档中

  • 本文向大家介绍如何在Java中处理Selenium中的代理?,包括了如何在Java中处理Selenium中的代理?的使用技巧和注意事项,需要的朋友参考一下 我们可以借助PROXY类在Java中使用Selenium处理代理。

  • 我们有几个域对象具有可为空的字段。我们已经读到hibernate需要“raw”对象来正确映射它,所以我们的getter返回optionals。我们的域对象如下所示: 但现在我们在解决/绑定这些字段时遇到了问题。jspx文件。(显示和表单输入字段。)对于基本类型和字符串,我们可以通过定义自定义OptionalToStringConverter绕过这一点。 对其他域对象的可空引用仍然是一个问题。 我们

  • 问题内容: 在开发高度基于XML的Java应用程序时,我最近在Ubuntu Linux上遇到了一个有趣的问题。 我的应用程序使用Java Plugin Framework ,似乎无法将dom4j创建的XML文档转换为Batik的 SVG规范实现。 在控制台上,我了解到发生了错误: 我认为问题是由来自JVM的原始类加载器与插件框架部署的类加载器之间的冲突引起的。 据我所知,不可能为框架指定一个类加载

  • 问题内容: 在开发一个高度基于XML的Java应用程序时,我最近在Ubuntu Linux上遇到了一个有趣的问题。 我的应用程序使用Java Plugin Framework ,似乎无法将dom4j创建的XML文档转换为Batik的 SVG规范实现。 在控制台上,我了解到发生了错误: 我认为问题是由JVM的原始类加载器与插件框架部署的类加载器之间的冲突引起的。 据我所知,不可能为框架指定一个类加载