kotlin学习笔记-条件与循环
if else
普通用法
和 JavaScript里的 if else 一样
if else 是有返回值的
和其他语言的不同之处,kotlin的if else 是有返回值
这个有些类似于 JavaScript里的三元运算符 let max = a>b ? a : b
再来一个例子
when
类似 其他语言里的 switch case
,但似乎更牛逼
加个花括号,在里面写更多表达式
如果有多个 case匹配呢
不需要其他语言里的break, 如果匹配到了某个分支, 那就不会再匹配后续分支
when 匹配多个条件?
用逗号分割多个要匹配的结果
when 区间匹配
配合in
关键字,和范围运算符 ..
一起使用, 就可以匹配区间了
类型匹配
is 关键字,类似于 JavaScript里的 instanceof
不带参数的 when
这样有点当成 if else 来用了
使用函数或表达式进行匹配
这个和上面那个不带参数的用法一样,只是把表达式换成了函数
感觉这个还不错,有些复杂情况下,不用写很多 if else了
when 有返回值
when也可以像if else那样,直接赋值给某个变量
for循环
和其他语言差不多
step 步长
downTo 倒数
until
半开区间(包含起始值,但不包含结束值)
遍历数组
while 循环
我没记错的话,c、c++ 、js里都有这玩意
do while 循环
do while 和while的区别是,
while先检查是否有资格执行,如果有资格,就执行(没付款就不能享受服务)
do while 是先执行一次,再看看有没有资格做下一次,如果有,就继续,如果没有,就结束(先享受一次服务,再检查是否可以再次享受服务, 可以理解为一定会被白嫖一次)