As it said in kotlin reference !! is an option for NPE-lovers :)
a!!.length
will return a non-null value of a.length or throw a NullPointerException if a is null:
val a: String? = null
print(a!!.length) // >>> NPE: trying to get length of null
a?.length
returns a.length if a is not null, and null otherwise:
val a: String? = null
print(a?.length) // >>> null is printed in the console
To sum up:
+------------+--------------------+---------------------+----------------------+
| a: String? |           a.length |           a?.length |           a!!.length |
+------------+--------------------+---------------------+----------------------+
|      "cat" | Compile time error |                   3 |                    3 |
|       null | Compile time error |                null | NullPointerException |
+------------+--------------------+---------------------+----------------------+