gpt4 book ai didi

java - .class错误无法弄清楚

转载 作者:行者123 更新时间:2023-12-01 20:26:52 25 4
gpt4 key购买 nike

.class 预计在第 68 行返回双结果;该程序无法编译,但我无法弄清楚有人可以帮忙吗?

这是一个基本的计算器 java 文件,它可以输入用户编号并根据输入的运算符对它们执行数学计算

// Calculator.java - This program performs arithmetic, ( +. -, *. /, % ) on two numbers
// Input: Interactive.
// Output: Result of arithmetic operation

import javax.swing.*;


public class Calculator
{
public static void main(String args[])
{
double numberOne, numberTwo;
String numberOneString, numberTwoString;
String operation;
double result ;

numberOneString = JOptionPane.showInputDialog("Enter the first number: ");
numberOne = Double.parseDouble(numberOneString);
numberTwoString = JOptionPane.showInputDialog("Enter the second number: ");
numberTwo = Double.parseDouble(numberTwoString);
operation = JOptionPane.showInputDialog("Enter an operator (+.-.*,/,%): ");

// Call performOperation method here

result = performoperation(numberOne, numberTwo, operation);
System.out.format("%.2f",numberOne);
System.out.print(" " + operation + " ");
System.out.format("%.2f", numberTwo);
System.out.print(" = ");
System.out.format("%.2f", result);

System.exit(0);

} // End of main() method.


// Write performOperation method here.

public static double performOperation(double numberOne, double numberTwo, String operation)

{


double result = 0;


if (operation .equals("+")){
result = numberOne + numberTwo;
}

else if (operation .equals("-")){
result = numberOne - numberTwo;
}

else if (operation .equals("/")){
result = numberOne / numberTwo;
}

else if (operation .equals("*")){
result = numberOne * numberTwo;
}

else if (operation .equals("%")){
result = numberOne % numberTwo;
}


return double result;


System.out.println("The result is " + result);


}// END


} // End of Calculator class.

最佳答案

您的代码中有一些错误:

  1. 您试图返回双结果,而实际上,您应该只返回结果

  2. 在您的 main 方法中,您调用了一个不存在的方法,即“performOperation”,而您的方法称为“performOperation”。 Java 区分大小写。

  3. 您尝试在返回结果后打印结果,但这是行不通的。您必须在返回之前打印。

我修复了您的一些代码,并将您的 if/else 语句转换为 switch case(我认为当您有重复代码时更容易处理)。

import javax.swing.*;

public class Calculator {

public static void main(String args[]) {
String numberOneString = JOptionPane.showInputDialog("Enter the first number: ");
double numberOne = Double.parseDouble(numberOneString);
String numberTwoString = JOptionPane.showInputDialog("Enter the second number: ");
double numberTwo = Double.parseDouble(numberTwoString);
String operation = JOptionPane.showInputDialog("Enter an operator (+.-.*,/,%): ");

// Call performOperation method here
double result = performOperation(numberOne, numberTwo, operation);
System.out.format("%.2f", numberOne);
System.out.print(" " + operation + " ");
System.out.format("%.2f", numberTwo);
System.out.print(" = ");
System.out.format("%.2f", result);

System.exit(0);

} // End of main() method.
// Write performOperation method here.

public static double performOperation(double numberOne, double numberTwo, String operation) {
double result = 0;

switch (operation) {
case "+":
result = numberOne + numberTwo;
break;
case "-":
result = numberOne - numberTwo;
break;
case "/":
result = numberOne / numberTwo;
break;
case "*":
result = numberOne * numberTwo;
break;
case "%":
result = numberOne % numberTwo;
break;
default:
break;
}

System.out.println("The result is " + result);
return result;

}// END
} // End of Calculator class.

关于java - .class错误无法弄清楚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43753307/

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