?表示当前对象是否可以为空,当对象为空时,不会执行后面的代码。通俗说就是运行不会报空指针异常的错误了 !! 通知编译器不做非空校验。如果运行时发现变量为空,就扔出异常 这两个都是Kotlin为我们提供的检验空指针的方法