Let

Usually, we use let() to do something only if the object is not null:

val sometimesNull = if (Random().nextBoolean()) "not null" else null

sometimesNull?.let {
println("It was $it this time")
}

One common gotcha here is that let() by itself also works on nulls:

val alwaysNull = null

alwaysNull.let { // No null pointer there
println("It was $it this time") // Always prints null
}

Don't forget the question mark, ?, when you use let() for null checks.

The return value of let() is not related to the type it operates on:

val numberReturned = justAString.let {
println(it)
it.length
}

This code will print "string" and return Int 6 as its length.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.142.135.249