null
par Kotlin est certainement le premier argument que l'on retrouve dans les présentations à propos de Kotlin. Je n'ai pas un énorme background en Java (je n'ai d'ailleurs pas touché à Java depuis au moins 3 ou 4 ans), mais les chaines d'appels que tu donnes en exemple est quelque chose de finalement très courant en Java, et la possibilité de pouvoir stopper les appels en cas de null
(x?.getMachin()?.getBidule()?.getTruc()
) est vraiment pratique. null
: x?.getMachin().?getBidule()?: 1
(si un élément est null, la ligne retourne 1 au lieu de null
)). getattr(x, 'y', 1)
pour un check implicite, mais ce n'est pas pareil (notamment parce que ça marche pas trop avec les callables, et que ça ne se chaîne pas facilement). Roidelapluie a peut-être une idée ?x = a if b else c
aux exceptions : x = try a else b
dont la sémantique est : essaie d'exécuter a
et en cas d'exception, passe à b
. Malheureusement, ça a été rejeté (car ça ajoute encore un élément syntaxique supplémentaire). Au final, je ne sais pas trop comment on peut checker facilement a().b().c().d()
en Python sans encadrer le tout d'un try ... except
).
1996-2024 — Lexpage v4 — GPLv3 (sources)
page générée le 23 décembre 2024 à 08:01:51