国小造句最常见的题目就是:如果...就...,如果被打就会痛。对於程序语言也是有这样的语法给你作使用的,且就跟平常我们说的方式差不多,叫一个国小生来写程序都没问题。
并没有。
条件语句最常见的就是 if-else,写起来也算是满直觉的:
if (count == 42) {
println("宾果答对了!是42!")
} else {
println("不是喔不是喔")
}
也可以使用 if-else 去增加条件内容:
if(count == 42){
println("宾果答对了!答案是42!")
}else if(count < 40){
println("答案很接近了喔~")
}else{
println("不对喔不对喔")
}
也可以将昨天的 x in 1...5 应用进来,就可以很直觉的去判断变数是在哪个范围中:
if(count == 42){
println("宾果答对了!答案是42!")
}else if(count in 1 ..41){ //1~41
println("再大一点")
}else if(count in 43..100){ //43~100
println("再小一点")
}else{
println("范围是 1~100 喔")
}
看完上面的程序後你可能会发现,有很多重复的程序,每个条件式的结果都是输出一个String字串,你可以改写成以下这样:
val answerString : String = if(count == 42){
"宾果答对了!答案是42!"
}else if(count in 1 ..41){
"再大一点"
}else if(count in 43 ..100){
"再小一点"
}else{
"范围是 1~100 喔"
}
println(answerString)
每个条件分支的结果都是回传字串,所以我们宣告一个 answerString 去跑 if-else 的判断式,由判断式去赋予 answerString 的值。其实一开始宣告的时候是可以不用写类别注记的,但是为了清楚的解读程序码,加上去还是比较好。
随着条件式越来越复杂,你也可以考虑用 when 去代替 if-else :
val answerString = when {
count == 42 -> "宾果答对了!答案是42!"
count in 1..41 -> "再大一点"
count in 43..100 -> "再小一点"
else -> "范围是 1~100 喔"
}
println(answerString)
when表达式是由一个分支条件、一个箭头和一个结果组成。如果箭头左侧条件为 true, 则会 return 右侧的表达式结果。跟 if-else 比起来是不是更清楚明了一点了呢。
条件式的介绍就先到这边!
下一篇见写写打家打家摆掰。
<<: Day11 Android - AlertDialog视窗
>>: Day-15 线性时间演算法 : Bucket sort
AutoML得到的结果,说明如下。见图<AZ-exp4MNIST.png> 当看到 [S...
前言 参考 Tyler Potts 的 Demo 影片- Build a Music app usi...
偶尔会看到,往下滚,球就会跟着滚动的幅度以抛物线移动。 今天就来使用SVG的Path做做看! 其实是...
大家好,我是西瓜,你现在看到的是 2021 iThome 铁人赛『如何在网页中绘制 3D 场景?从 ...
是这样的,我曾经在新闻上看到说罗东的农夫有种植的西瓜被偷, 我在想除了监视器以外,还有没有甚麽方法可...