Kotlin 编程:使用 switch...case 制作简单计算器

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

import java.util.*

fun main(args: Array<String>) {
    val reader = Scanner(System.`in`)
    print("Enter two numbers: ")

    // nextDouble() reads the next double from the keyboard
    val first = reader.nextDouble()
    val second = reader.nextDouble()

    print("Enter an operator (+, -, *, /): ")
    val operator = reader.next()[0]

    val result: Double

    when (operator) {
        '+' -> result = first + second
        '-' -> result = first - second
        '*' -> result = first * second
        '/' -> result = first / second
        // operator doesn't match any case constant (+, -, *, /)
        else -> {
            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() 方法存储在 operator 变量中。

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

因为运算符 * 匹配了 '*': 这个 when 条件,所以程序的控制流跳转到

result = first * second;

此语句计算乘积并将其存储在变量 result 中,并使用 printf 语句打印出来。

这是等效的 Java 代码:Java 编程:制作简单计算器

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战