![Kotlin从入门到进阶实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/633/26793633/b_26793633.jpg)
上QQ阅读APP看书,第一时间看更新
2.1 变量和标识符
变量(数据名称)标识一个对象的地址,我们称之为标识符。而具体存放的数据占用内存的大小和存放的形式则由其类型来决定。
在Kotlin中,所有的变量类型都是引用类型。Kotlin的变量分为val(不可变的)和var(可变的)。可以简单理解为:
val是只读的,仅能一次赋值,后面就不能被重新赋值;
var是可写的,在它生命周期中可以被多次赋值。
例如,使用关键字val声明不可变变量,代码如下:
![](https://epubservercos.yuewen.com/317ECE/15253386404112206/epubprivate/OEBPS/Images/Figure-P29_40811.jpg?sign=1739344911-79zX1RB1bFP1uzsLSNYEyzPXUrZR6X41-0-b09fd5315f46e6056497b1a5f48c1cef)
另外,还可以省略后面的类型Int,直接声明如下:
![](https://epubservercos.yuewen.com/317ECE/15253386404112206/epubprivate/OEBPS/Images/Figure-P30_40812.jpg?sign=1739344911-BA3fMCs3lG835Ql4r8EreU1XYeRAyH8B-0-aac9aa1f008f8b13673ede80aa7512b6)
用val声明的变量不能重新赋值,代码如下:
![](https://epubservercos.yuewen.com/317ECE/15253386404112206/epubprivate/OEBPS/Images/Figure-P30_40813.jpg?sign=1739344911-eZ9ssxUJcsLT1uCzDn9ruCzv0N2nZSFL-0-17d9eb5af80955d98432587227ec6d45)
使用var声明可变变量,代码如下:
![](https://epubservercos.yuewen.com/317ECE/15253386404112206/epubprivate/OEBPS/Images/Figure-P30_40814.jpg?sign=1739344911-MZFtUqRTDCSlg8bCSK9unmvkFtQGnpGg-0-c5345639b8b4141b5d3b00a4b541a3de)
只要可以,应尽量在Kotlin中首选使用val不变值。因为在程序中大部分地方只需要使用不可变的变量,而使用val变量可以带来可预测的行为和线程安全等优点。
变量名就是标识符。标识符是由字母、数字、下画线组成的字符序列,不能以数字开头。下面是合法的变量名。
![](https://epubservercos.yuewen.com/317ECE/15253386404112206/epubprivate/OEBPS/Images/Figure-P30_40815.jpg?sign=1739344911-32CEnNfQjzbz9yf8JMn47DdNmUeg2kWF-0-ec33bd93fc25ae373b54c0eb1aaa7f94)
跟Java一样,Kotlin的变量名区分大小写,命名遵循驼峰式命名法。