kotlin学习笔记——类型、变量、属性

Kotlin学习笔记系列:http://blog.csdn.net/column/details/16696.html

对象
在kotlin中一切皆是对象,没有像java中那样的基本原始类型

1、不能自动转型
必须做一个明确的类型转换,如:
var i: Int = 70
var d: Double = i.toDouble()

2、字符
不能作为数字处理,必须转为数字,如:
var c: Char = 'a'
var i: Int = c.toInt()

3、位运算
在java中我们使用“|”、“&”等
在kotlin中我们使用and、or、xor等,如:
var flag = flag1 and flag2

4、省略变量类型
变量类型可以省略,由编译器自己推断,如:
var i = 9
var iHex = 0x09
var l = 9L
var d = 9.0
var f =9.0F

5、String
可以像数组那样访问和遍历,如:
var s = "hi,kotlin"
var c = s[4]
for(c in s){
...
}

6、变量
两种:var 可变变量; val 不可变变量(与java中final类似)
尽量的使用val

7、getter和setter
直接调用属性即可,会默认使用getter和setter。也可以自定义getter和setter,如果在getter和setter中访问属性自身的值,可以使用field这个预留字段(编译器自动创建的)。如:

class Park{  
     var local: String = ""  
          get() = field.toUpperCase()  
          set(value){  
              field = "Local: $value"   
          }  
}  

注意field只能在属性访问器内访问

8、可空类型
当在变量类型后面加上问号,代表该变量可以为空,如:

var str1: String? = "str"
str1 = null
var str2: String = "str"
str2 = null              //这句会报错,不能将null赋值给不可为空变量

关于Kotlin中的null问题,后面会有单独一章来讲解。

你可能感兴趣的:(kotlin学习笔记——类型、变量、属性)