Kotlin的when表达式怎么用

发布时间:2025-04-16 01:41:51 作者:小樊
来源:亿速云 阅读:94

在 Kotlin 中,when 表达式是一种条件控制结构,类似于 Java 中的 switch 语句,但功能更加强大。它可以用于替代多个 if-else 语句,并且支持多种条件判断,包括值匹配、类型匹配和范围匹配等。

以下是 when 表达式的一些常见用法:

基本用法

最简单的 when 表达式只是简单地检查一个值是否等于某个特定值:

val x = 3
when (x) {
    1 -> println("One")
    2 -> println("Two")
    3 -> println("Three")
    else -> println("Other")
}

在这个例子中,when 表达式检查变量 x 的值,并根据匹配的值执行相应的代码块。

使用范围匹配

你可以使用 .. 运算符来指定一个范围:

val age = 25
when (age) {
    in 0..12 -> println("Child")
    in 13..19 -> println("Teenager")
    in 20..64 -> println("Adult")
    else -> println("Senior")
}

在这个例子中,age 在不同的年龄段会打印不同的消息。

使用类型匹配

when 表达式还可以用于类型匹配:

fun describe(obj: Any) {
    when (obj) {
        is String -> println("It's a string: $obj")
        is Int -> println("It's an int: $obj")
        is Boolean -> println("It's a boolean: $obj")
        else -> println("Unknown type")
    }
}

在这个例子中,describe 函数根据传入对象的类型执行不同的代码块。

使用多个条件

你可以在同一个 when 表达式中使用多个条件:

val x = 5
when {
    x > 10 -> println("Greater than 10")
    x < 5 -> println("Less than 5")
    else -> println("Between 5 and 10")
}

在这个例子中,when 表达式没有检查变量 x 的值,而是直接检查多个条件。

使用 else 分支

when 表达式必须有一个 else 分支,以处理所有未匹配的情况:

val x = 3
when (x) {
    1 -> println("One")
    2 -> println("Two")
    3 -> println("Three")
    else -> println("Other")
}

在这个例子中,如果 x 的值不是 1、2 或 3,else 分支将被执行。

简化语法

如果你只有一个条件分支,可以省略 -> 和代码块:

val x = 3
when (x)
    1 -> println("One")
    2 -> println("Two")
    3 -> println("Three")
    else -> println("Other")

在这个例子中,when 表达式的语法更加简洁。

通过这些用法,你可以灵活地使用 when 表达式来处理各种条件判断。

推荐阅读:
  1. 怎么在JavaScript项目中中调用 Kotlin 方法
  2. kotlin语法特性有哪些

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

kotlin

上一篇:如何优化OpenHarmony TextView的性能

下一篇:Kotlin的泛型怎么应用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》