//初始化
var a: Int = 1
val c: Int = 1
//经过推导得出数据类型
var b = 5
val d = 50
顶层声明的情况下是可以不用实例化,实际上我们在开发中大多时候都是在一个类中定义一个变量,这种情况称为声明类的属性
必须初始化,如果不初始化则要使用lateinit关键字
class Test2() {
var a: String? = "hello"
val b: String? = null
var c: String = "hello"
init {
println("a => $a \t b => $b \t c => $c")
}
}
声明可空变量
声明后期初始化属性的特点:
延迟初始化属性
Kotlin中声明常量的方式和在Java中声明常量的方式有很大的区别
//java中的常量
private final int b = 10
//等同于kotlin
val a =6
但是kotlin中 val 修饰的只是一个不可修改的变量,kotlin中定义常量需要使用关键字 const
const 只能修饰 val 不能修饰 var
声明常量的三种方式
//const关键字使用
//顶层声明
const val aaa: String = "aaa"
//Object修饰类
object vv {
const val bb: String = "bb"
}
//伴生对象
class cc {
companion object {
const val cc: String = "cc"
}
}
嵌套多行注释:kotlin中块注释的级联使用,从视觉上给人一种层次分明的感觉
/*
注释1
/*
注释2
/*
注释3
java中是不支持这种注释方式,但是在kotlin中是支持的。从视觉上给人一种层次分明的感觉。
*/
*/
*/
原文:https://www.cnblogs.com/xiaoxiaoliu/p/10907625.html