原文: https://www.programiz.com/kotlin-programming/examples/calculator-when

在此程序中,您将学习使用 Kotlin 中的when表达式制作一个简单的计算器。 该计算器将能够对两个数字进行加,减,乘和除运算。

示例:使用switch语句的简单计算器

  1. import java.util.*
  2. fun main(args: Array<String>) {
  3. val reader = Scanner(System.`in`)
  4. print("Enter two numbers: ")
  5. // nextDouble() reads the next double from the keyboard
  6. val first = reader.nextDouble()
  7. val second = reader.nextDouble()
  8. print("Enter an operator (+, -, *, /): ")
  9. val operator = reader.next()[0]
  10. val result: Double
  11. when (operator) {
  12. '+' -> result = first + second
  13. '-' -> result = first - second
  14. '*' -> result = first * second
  15. '/' -> result = first / second
  16. // operator doesn't match any case constant (+, -, *, /)
  17. else -> {
  18. System.out.printf("Error! operator is not correct")
  19. return
  20. }
  21. }
  22. System.out.printf("%.1f %c %.1f = %.1f", first, operator, second, result)
  23. }

运行该程序时,输出为:

  1. Enter two numbers: 1.5
  2. 4.5
  3. Enter an operator (+, -, *, /): *
  4. 1.5 * 4.5 = 6.8

使用Scanner对象的next()方法,将用户输入的*运算符存储在operator变量中。

同样,使用Scanner对象的nextDouble()方法,将两个操作数 1.5 和 4.5 分别存储在变量firstsecond中。

由于运算符*匹配何时条件'*':,因此程序控制跳至

  1. result = first * second;

该语句计算产品并将结果存储在变量result中,并使用printf语句进行打印。

以下是等效的 Java 代码:制作简单计算器的 Java 程序