第三章:kotlin基本语法:var和val、?和!!的区别

kotlin学习笔记

var和val

var:可变变量

var <标识符> : <类型> = <初始化值>

例:

var a :Int? = 10

var b = 10  (编译器支持自动类型判断)

var list :ArrayList<String> ? = null

val:不可变变量(一旦赋值不可修改)

val<标识符> :<类型> = <初始化值>

例:

val a :Int  

a = 10

val b :Int = 10

val c :Int = 10

c = 20(错误)

?和!!

?:表示当前对象可以为空

!!:表示当前对象不为空的情况下执行

?系统在任何情况下不会报他的空指针异常

!!:如果对象为null,那么报空指针异常

例:

在Java中:ArrayList<String> list = null

list.size调用的时候会报空指针

在kotlin中:var list:ArrayList<String>? = null

list?.size调用的时候不会报异常

list!!size报异常

扩展:

kotlin的三元二次表达式:

var size = list?.size? : 0

list?.size为null时返回0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值