你瞅啥?
Kotlin 同样提供了两种基本的流程控住结构:分支结构和循环结构。
分支结构:用于实现根据条件来选择性地执行某段代码;
循环结构:则用于实现根据循环条件重复执行某段代码;
分支语句:if和when两种分支语句,Kotlin的when语句可以代替Java的switch语句,而且功能更强大;
循环语句:while、do while、for-in 循环,抛弃了Java原有的普通for循环。Kotlin也提供了break和continue来控制程序的循环结构;
// ---------------输出 “及格”
var soure='D'
when (soure){
'A' -> {
println("优秀")
println("更上一层楼")
}
'B' -> println("中等")
'C','D' -> println("及格")
else -> println("不及格")
}
// ---------------输出 “优秀” "更上一层楼"
var score = 'B'
var str = "EFGH"
when (soure) {
str[0] - 4, str[1] - 4 -> {
println("优秀")
println("更上一层楼")
}
str[2] - 4, str[3] - 4 -> println("中")
else -> {
println("不及格")
println("别说了,努力吧,骚年")
}
}
// ---------------输出 “优秀” "更上一层楼"
var date = Date()
when (date) {
Date() -> {
println("优秀")
println("更上一层楼")
}
else ->{
println("不及格")
println("别说了,努力吧,骚年")
}
}
// ---------------输出 年龄39 中年
val age = Random().nextInt(100)
println("年龄${age}")
// 使用when 表达式对str2 的赋值
var str2 = when (age) {
in 10..25 -> "青年"
in 26..50 -> "中年"
in 51..80 -> "老年"
else -> "其他"
}
println(str2)
/**
*i 的值是:0
i 的值是:1
i 的值是:2
*/
for (i in 0..10) {
println("i 的值是:${i}")
if (i == 2) {
// 执行该语句时将结束循环
break
}
}
/**
*i 的值是:0
i 的值是:1
*/
// 外层循环 outer作为标签符
auter@ for (i in 0 until 5){
//内层循环
for (i in 0..10) {
println("i 的值是:${i}")
if (i == 1) {
// 跳出outer标签所标识的循环
break@auter
}
}
}
/**
* ---i 的值是:0
---return 后的输出语句
---i 的值是:1
---return 后的输出语句
---i 的值是:2
*/
for (i in 0 until 10) {
println("---i 的值是:${i}")
if (i == 2) {
// 执行该语句时将结束循环
return
}
println("---return 后的输出语句")
}
网友评论