Giriş
1. Nullable Type
Açıklaması şöyle. C# ile aynı aslında
?: literally means “if the left part is null, call or return right part”.
Örnek
Şöyle yaparız
fun func(obj : MyClass?) {
obj?.c?.printClass() : print("oops");
}
Açıklaması şöyle
requireNotNull can throw an IllegalArgumentException while checkNotNull can throw an IllegalStateException
Farkları şöyle
checkNotNull şöyle
It is a semantic difference and hence it throws different exceptions. RequireNotNull is used to check input values, typically at the beginning of a method, while checkNotNull is used anywhere to check the current state.
requireNotNull şöyle
[...]
if (value == null) {
val message = lazyMessage()
throw IllegalArgumentException(message.toString())
} else {
return value
}
[...]
if (value == null) {
val message = lazyMessage()
throw IllegalStateException(message.toString())
} else {
return value
}
Hiç yorum yok:
Yorum Gönder