当前位置: 首页 > wzjs >正文

电影网站建设内容做虚假彩票网站判几年

电影网站建设内容,做虚假彩票网站判几年,专业网站建设公司哪里好,广西seo优化掌握 when 的灵活运用,告别繁琐的 if-else 链 以下是 Kotlin 中 when 表达式的 12种核心用法 的全面总结,涵盖基础到高级场景,并附带实用示例: 一、基础用法 1. 替代 Java 的 switch-case when (x) {1 -> println("一&qu…

掌握 when 的灵活运用,告别繁琐的 if-else 链
以下是 Kotlin 中 when 表达式的 12种核心用法 的全面总结,涵盖基础到高级场景,并附带实用示例:
一、基础用法
1. 替代 Java 的 switch-case

when (x) {1 -> println("一")2 -> println("二")else -> println("其他")
}

2. 多条件合并

when (x) {1, 2 -> println("一或二")in 3..5 -> println("三到五")else -> println("其他")
}

二、高级匹配
3. 类型检查(智能转换)

when (obj) {is String -> println(obj.length) // 自动转为Stringis Int -> println(obj.plus(1))   // 自动转为Intelse -> println("未知类型")
}

4. 范围匹配

when (score) {in 90..100 -> "A"in 80 until 90 -> "B"!in 60..79 -> "不及格" else -> "C"
}

5. 函数调用作为分支条件

when {x.isOdd() -> println("奇数")x.isEven() -> println("偶数")else -> println("非整数")
}

三、特殊场景
6. 无参数形式(布尔表达式链)

when {network.isConnected() -> fetchData()cache.isValid() -> showCachedData()else -> showError()
}

7. 枚举匹配

enum class Color { RED, GREEN, BLUE }when (color) {Color.RED -> println("红色")Color.GREEN -> println("绿色")Color.BLUE -> println("蓝色")
}

8. 解构声明

when (val (x, y) = point) {(0, 0) -> println("原点")(1, 1) -> println("对角线点")else -> println("其他坐标")
}

四、返回值特性
9. 作为表达式返回结果

val result = when (input) {"yes" -> "同意""no" -> "拒绝"else -> "无效输入"
}

10. 配合 let 处理可空变量

val message = nullableStr?.let { when (it.length) {0 -> "空字符串"in 1..10 -> "短文本"else -> "长文本"}
} ?: "变量为null"

五、实用技巧
11. 与 sealed class 配合(状态机)

sealed class Result {data class Success(val data: String) : Result()data class Error(val msg: String) : Result()
}when (result) {is Result.Success -> showData(result.data)is Result.Error -> showError(result.msg)
}

12. 替代 if-else 链

// 传统写法
if (x == 1) {// ...
} else if (x in 2..5) {// ...
} else {// ...
}// Kotlin 优雅写法
when (x) {1 -> { /* ... */ }in 2..5 -> { /* ... */ }else -> { /* ... */ }
}

六、注意事项
穷尽性检查:当作为表达式时,必须包含 else 分支(枚举或密封类除外)

执行顺序:按从上到下匹配,首个满足条件的分支执行后即退出

性能优化:编译器会将密集的整型匹配优化为 跳转表

掌握这些用法后,when 可以替代绝大多数条件判断场景,使代码更简洁安全。建议在 Android 开发中优先使用 when 替代复杂的 if-else 嵌套。

http://www.dtcms.com/wzjs/594885.html

相关文章:

  • 广西建设厅网站绿色建筑标识个人开小公司的流程
  • 芜湖服装网站建设南通制作手机网站
  • 湖南兼职网站建设大型网站建设套餐
  • 饰品做国际贸易哪些网站python 做网站相关的库
  • 如何做网站seo排名优化北京网站模板
  • 中国都有哪些网站wordpress 未加密
  • 自己做网站需要哪些软件wordpress仿魔客吧
  • 网站开发专业百度地图网页版
  • 高端婚纱摄影网站失信人员黑名单查询
  • 建立网站用英语小红书关键词排名优化
  • 龙岩做网站开发找哪家推荐做pc端网站
  • 外贸建站 宁波做球服的网站有哪些
  • 建立soho公司网站房地产最新消息
  • 网站建设什么专业北京终端区优化
  • 建设公司网站需要什么科目WordPress伪静态公告404
  • 佳木斯建网站的做商城网站要哪些流程
  • 网站空间怎么买网站策划招聘
  • 安徽省建设监理有限公司网站多少钱算网站
  • 图书馆网站参考咨询建设美橙建站怎么样
  • 做网络营销推广苏州网站建设优化过哦
  • 钢格板保定网站建设通州微网站优化
  • 电器类网站设计网站屏蔽ip
  • 商城网站网络公司河南能源企业网站建设
  • 公司网站怎么弄.la域名的门户网站
  • 网站怎么添加二级域名有什么做兼职的好的网站
  • 好品质自适应网站建设wordpress 自己做主页
  • 做网站多少钱 佛山网站需要数据库吗
  • 电子商务网站建设与实验全国造价工程师管理系统官网
  • 同城配送网站建设网站做缓存
  • 沈阳网站建设蓝顶网络网站免费正能量软件直播