117 votes

Emballage null-de retour de la méthode en Java avec Option Scala?

Supposons que j'ai une méthode session.get(str: String): String mais vous ne savez pas s'il vous renvoie une chaîne ou une valeur null, parce qu'il vient de Java.

Est-il un moyen plus facile de le traiter en Scala au lieu de session.get("foo") == null ? Peut-être un peu de magie appliquent comme ToOption(session.get("foo")) , et ensuite je peux les traiter comme Scala

ToOption(session.get("foo")) match {
    case Some(_) =>;
    case None =>;
}

201voto

pelotom Points 14817

L' Option compagnon de l'objet apply méthode sert de la fonction de conversion de valeurs null références:

scala> Option(null)
res4: Option[Null] = None

scala> Option(3)   
res5: Option[Int] = Some(3)

20voto

RoToRa Points 20081

L' Option objet a un applyméthode qui fait exactement cela:

var myOptionalString = Option(session.get("foo"));

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X