(2018.7.19)
8种基本类型,没有包装类型。会根据使用场景自动转换。
数据类型自动推断,定义时可以省略。 var a = 10
类型转换
var str = "string" var intA = 10 str = intA.toString() // 将intA 转为String类型
var // 定义可变变量
val // 定义不可不变量
定义原样输出
val strTemp = """A
|B
|C
""".trimMargin() // 输出结果去除|前面的空格
输出:
A
B
C
去掉字符串中的空格(首尾空格)
val str = " a b sd "str.trim()
// 输出
a b sd
比较字符串
equals 字符串值是否相等
== 字符串值是否相等
=== 字符串地址是否相等
元组
// 二元元组
var person: Pair<String, Int> = Pair("Tom", 23)
// var person: Pair<String, Int> = "Jone" to 25 作用同上一行
val name = person.first
val age = person.second
// 三元元组
val nemPerson: Triple<String, Int, String> = Triple(first = "Jenny", second = 23, third = "Beijing")
空值处理
val t: String? = null // 添加?后可以赋值空值给变量
t?.toInt() // ?. 安全调用符, t 如果不为nulll执行后面的toInt()
val t1:Int = t!!.toInt() // !! 非空断言,告诉编译器当前t一定不为空,如果t为null还是会导致崩溃
// Elvis 操作符
val t1:Int? = t?.toInt()
val t1:Int = t?.toInt() ?:-1 // 如果t不为空,将t.toInt()值返回,否则返回-1
输入、输出
println() // 输出
readLine() // 输入
网友评论