1.语句结构 (1)选择结构 (2)分支结构 when( 表达式 / 语句 ){ 目标值 1 -> 执行语句 1 目标值 2 -> 执行语句 2 …… 目标值 n -> 执行语句 n else ->{ 执行语句 } } 【案例】 MainActivity.k
效果:
【案例】when的简化形式
(3)循环语句
while{ }
do…while( )
for( )
【案例】统计10个学生成绩
使用forEach循环语句
【案例】
使用forEachIndexed语句
【案例】
对10个学生成绩求和,且统计出哪些同学成绩大于等于90分。给出这些学生的序号。
效果:
2.区间(1)正向区间
起点数.rangeTo(终点数)
【案例】
(2)逆向区间
终点数.downTo(起点数)
【案例】
(3)区间+步长step
起点数..终点数
【案例】
3.类型转换(1)类型判断
(2)类型转换
自动转换
强制转换
as操作符实现强制转换
as?表示如果转换失败,则返回null
4.空值处理(1)可空类型变量->?
var name:String?
(2)安全调用符->?.
某某变量?.xxx
当变量为null时,xxx不执行,当前表达式返回null
(3)空值默认->?:
某某变量?:默认值
(4)非空断言->!!
断言,不满足预期会出现异常
某某变量!!.xxx
当变量为null时,会抛出异常



