我试图弄清楚如何在方法中更新我的号码,即使我在它之前预定义了一个静态值并打算在方法内更新它。任何帮助将不胜感激。我知道我将结果设置为 0 但我的问题是我将如何更新它?
import javax.swing.*;
public class Arithmetic2
{
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 = 0;
performOperation(numberOne, numberTwo, operation, result);
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.
private static double result;
public static void performOperation(double numberOne, double numberTwo, String operation, double result) {
System.out.println("Res Equals the default 0: " + result);
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 : System.out.println("Invalid operator!");
}
System.out.println("Result New: " + result);
}
}
您的方法performOperation
返回一个void
值。那是一个空值。你必须返回值类型result
是double
你的情况。
所以,改变你的当前:
public static void performOperation(double numberOne, double numberTwo, String operation, double result) {
System.out.println("Res Equals the default 0: " + result);
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 : System.out.println("Invalid operator!");
}
System.out.println("Result New: " + result);
}
对这个:
public static double performOperation(double numberOne, double numberTwo, String operation) {
double result = 0;
System.out.println("Res Equals the default 0: " + result);
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 : System.out.println("Invalid operator!");
}
System.out.println("Result New: " + result);
return result;
}
然后从此更改您的代码:
result = 0;
performOperation(numberOne, numberTwo, operation, result);
对此:
result = performOperation(numberOne, numberTwo, operation);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句