示例:使用switch语句的简单计算器
import java.util.Scanner;
public class Calculator {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
System.out.print("Enter two numbers: ");
// nextDouble() reads the next double from the keyboard
double first = reader.nextDouble();
double second = reader.nextDouble();
System.out.print("Enter an operator (+, -, *, /): ");
char operator = reader.next().charAt(0);
double result;
switch(operator)
{
case '+':
result = first + second;
break;
case '-':
result = first - second;
break;
case '*':
result = first * second;
break;
case '/':
result = first / second;
break;
// operator doesn't match any case constant (+, -, *, /)
default:
System.out.printf("Error! operator is not correct");
return;
}
System.out.printf("%.1f %c %.1f = %.1f", first, operator, second, result);
}
}
输出
Enter two numbers: 1.5
4.5
Enter an operator (+, -, *, /): *
1.5 * 4.5 = 6.8
用户输入的*
运算符 符使用Scanner
对象的next()
方法存储在运算符变量中。
同样,使用Scanner
对象的nextDouble()
方法将两个操作数1.5和4.5分别存储在变量first和second中 。
由于运算符 *
匹配when条件'*':
:,因此程序的控制跳转到
result = first * second;
该语句计算乘积并存储在变量结果和break
;该语句结束switch语句。
最后,执行printf
语句。
注意 :我们使用了printf()
方法而不是println
。这是因为这里要打印格式化的字符串。要了解更多信息,请访问Java printf()方法。