Розбираємо, як
takeIf і
takeUnless перетворюють «погані» значення на
null, щоб далі однаково обробляти їх через safe call
?. і оператор Elvis
?:. На практичних прикладах (валідація
indexOf, нормалізація введення в CLI, парсинг через
toIntOrNull) вчимося писати компактні охоронні вирази без зайвих розгалужень — і розуміти, де звичайний
if чесніший і читабельніший.