在这段 Java 代码中,我将解析一段简单的 Java 计算器代码,它能够执行基本的数学运算,包括加法、减法、乘法和除法。
一、主要代码
java
import java.util.Scanner;
public class demo101Calculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个数字:");
double num1 = scanner.nextDouble();
System.out.println("请输入第二个数字:");
double num2 = scanner.nextDouble();
System.out.println("请输入操作符(+、-、*、/):");
String op = scanner.next();
double result = calc(num1,num2,op);
System.out.println(num1+op+num2+"="+result);
}
public static double calc(double num1, double num2, String op) {
double result = 0;
switch (op){
case "+":
result = num1+num2;
break;
case "-":
result = num1-num2;
break;
case "*":
result = num1*num2;
break;
case "/":
result = num1/num2;
break;
default:
System.out.println("无效操作符,请重新输入!");
break;
}
return result;
}
}
二、代码解释
java
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个数字:");
double num1 = scanner.nextDouble();
System.out.println("请输入第二个数字:");
double num2 = scanner.nextDouble();
System.out.println("请输入操作符(+、-、*、/):");
String op = scanner.next();
首先,我们创建了一个 Scanner
对象 scanner
,该对象用于从控制台读取用户的输入。接下来,程序依次提示用户输入两个数字和一个操作符:
- 输入第一个数字 :使用
scanner.nextDouble()
方法读取用户输入的第一个数字,并将其存储在num1
变量中。 - 输入第二个数字 :同样地,读取第二个数字并存储在
num2
变量中。 - 输入操作符 :请求用户输入一个操作符(加、减、乘、除),并将输入的字符存储在
op
变量中。
java
double result = calc(num1, num2, op);
System.out.println(num1 + op + num2 + "=" + result);
接下来,我们调用 calc
方法来执行用户选择的操作,并将结果存储在 result
变量中。最后,程序输出计算结果,格式为 num1 op num2 = result
。
计算逻辑
java
public static double calc(double num1, double num2, String op) {
double result = 0;
switch (op) {
case "+":
result = num1 + num2;
break;
case "-":
result = num1 - num2;
break;
case "*":
result = num1 * num2;
break;
case "/":
result = num1 / num2;
break;
default:
System.out.println("无效操作符,请重新输入!");
break;
}
return result;
}
这一部分是计算的核心逻辑。我们定义了一个名为 calc
的方法,接收两个数字和一个操作符作为参数,并根据操作符执行相应的计算。具体实现如下:
- 操作符匹配 :通过
switch
语句,我们判断用户输入的操作符op
:- 加法 (
+
):计算num1 + num2
。 - 减法 (
-
):计算num1 - num2
。 - 乘法 (
*
):计算num1 * num2
。 - 除法 (
/
):计算num1 / num2
。
- 加法 (
- 无效输入处理:如果输入的操作符不在预定义范围内,程序会输出"无效操作符,请重新输入!"的提示。
最后,方法返回计算结果 result
。