在Kotlin中,一切都是对象。没有像Java中那样的原始基本类型。这个是非常有帮 助的,因为我们可以使用一致的方式来处理所有的可用的类型。
基本类型
数字类型不支持自动转型
val i : Int = 7 val d : Double = i.toDouble()
字符(Char)不能作为数字直接处理
val c : Char = 'c' val i : Int = c.toInt()
位运算使用"and","or"
val bitwiseOr = FLAG1 or FLAG2 val bitwiseAnd = FLAG1 and FLAG2
字面上写明具体的类型不是必须的
具体的类型
val i = 12 //An Int val iHex = 0x0f val l = 3L val d = 3.5 // An Double val f = 3,5F
一个String可以像数组那样被访问,并且被迭代
val s = "Example" val c = s[2] val s = "Example" for(c in s){ print(c) }
变量
定义:val(不可变) , var(可变)
一个不可变对象意味着它在实例化之后就不能再去改变它的状态了。如果你需要一 个这个对象修改之后的版本,那就会再创建一个新的对象。这个让编程更加具有健 壮性和预估性。
不可变对象也可以说是线程安全的,因为它们无法去改变,也不需要去定义访问控 制,因为所有线程访问到的对象都是同一个。
属性
在kotlin中只需要一个属性就可以了,如果没有任何指定,属性会默认使用getter , setter;可以使用field这个预留字段来访问
public class Person{ var name :String = "" get() = field.toUpperCase() set(value){ field = "Name:$value" } }