Safe Call Operator (?.):

val str: String? = null
val length: Int? = str?.length // prints null

Safe Call with let (?.let):

val str: String? = "hello"
str?.let {
    println(it.length)
}

Elvis Operator (?:):

val length = name?.length ?: -1

//is similar to

val length = if(name != null) name.length
							else -1

Not-Null Assertion Operator (!!):

val str: String? = null
val length: Int = str!!.length // Exception is thrown