在Kotlin中, 一切都是对象,没有像java中那样的原始基本类型, 这个是很有帮助的, 因为我们可以使用一致的方式来处理所有的可用的类型.
基本类型:
与java类似, Integer Float 和 boolean等类型依然存在, 但是他们都是作为对象存在的, 基本类型的名字和他们工作的方式都与java类似, 但是也有一些不同之处
数字类型不会自动转换----你不能给double类型分配一个int, 必须做一个明确的类型转换, 可以使用众多函数之一
val i :Int = 7
val d:Double = i.toDouble()
字符(char) 不能再作为数字处理, 在需要时可以把它转为一个数字
val c : Char = 'c'
val v : Int = c.toInt()
"或"和"与"也有所不同,在kotlin中使用 "or" 和 "and"
//JAVA
int bitwiseor = FLAG1|FLAG2;
int bitwiseand = FLAG1& FLAG2;
//kotlin
val bitwiseor = FLAG1 or FLAG2
val bitwiseand = FLAG1 and FLAG2
还有其他很多位操作符,比如 sh1 shs ushr xor 或 inv 当我们需要的时候,可以到官网查看
http://kotlinlang.org/docs/reference/basic-types.html#operations
● shl(bits) – signed shift left (Java's <<)
● shr(bits) – signed shift right (Java's >>)
● ushr(bits) – unsigned shift right (Java's >>>)
● and(bits) – bitwise and
● or(bits) – bitwise or
● xor(bits) – bitwise xor
● inv() – bitwise inversion
字面上可以写明变量的类型, 但这不是必须的, 可以让编译器自己去推断出具体的类型
val i = 12 //Int
val iHex = 0x0f //一个16进制的int类型
val l = 3l //long 类型
val d = 3.5 //double
val f = 3.5f //float
一个String可以像数组一样去访问, 并且被迭代
val s = "Example"
val c = s[2] // 这是一个字符'a'
//迭代String
val s = "Example"
for(c in s){
print(c)
}