gpt4 book ai didi

java - 为什么我的 Java 代码中出现 DivideByZeroException?

转载 作者:行者123 更新时间:2023-11-30 09:44:31 26 4
gpt4 key购买 nike

import java.io.IOException;
import java.util.*;

public class calling {
public static String s;
public static String t;
public static int y;
public static int x;

public static int num1() {
int x;
Scanner scanner = new Scanner (System.in);
System.out.println("Please enter a number called x: ");
x=scanner.nextInt();
return x;
}

public static int num2() {
int y;
Scanner scanner = new Scanner (System.in);
System.out.println("Please enter a second number called y: ");
y=scanner.nextInt();
return y;
}

public static void calculation() {
Scanner input = new Scanner(System.in);

System.out.println("What process would you like to do? *, /, + or - ?");
s=input.next();

if (s.equals("*")) {
System.out.println("\nThe product of these numbers is:" + (x*y));}
else
if (s.equals("+")) {
System.out.println("\nThe sum of these numbers is: " + (x+y));}

System.out.println("\nDo you want x or y to be the dividor/subtractor?: ");
t=input.next();

if (t.equals("y") || t.equals("Y") ) {

if (s.equals("/")) {
System.out.println("\nThe quotient of these numbers is: " + (x/y));}
else
if (s.equals("-")) {
System.out.println("\nThe difference of these numbers is: " + (x-y));}}

else
if (t.equals("x") || t.equals("X")){

if (s.equals("/")) {
System.out.println("\nThe quotient of these numbers is: " + (y/x));}
else
if (s.equals("-")) {
System.out.println("\nThe difference of these numbers is: " + ((y-x)));}}
}

public static void main (String [] args) throws IOException {


num1();
num2();
calculation();


}

}

我不断收到这个错误,我的最终结果应该是我的最终结果,这只是执行计算的结果

这是错误:"Exception in thread "main"java.lang.ArithmeticException:/by zero在 calling.calculation(calling.java:44)在 calling.main(calling.java:64)"

最佳答案

由于这可能是家庭作业,我会给你一个提示,为你指明正确的方向。

当你运行你的程序时,你执行 num1num2 来收集 xy 的值来自用户。在 num2 中,y 被声明为局部变量。当 num2 返回时那个变量会发生什么?这对第 7 行声明的类字段(变量)y 意味着什么?

这也是学习如何使用调试器的好时机。在第 44 行打个断点,看看 xy 的值是多少。

关于java - 为什么我的 Java 代码中出现 DivideByZeroException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7870207/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com