53 votes

Java : Ternaire sans retour. (Pour l'appel de méthode)

Je me demandais s'il était possible de faire une opération ternaire mais sans rien rendre.

Si ce n'est pas possible en Java, est-ce possible dans d'autres langages, si oui lesquels s'appliquent ?

 name.isChecked() ? name.setChecked(true):name.setChecked(false);

6voto

Amir Pashazadeh Points 4130

Parfois, vous pouvez utiliser une opération ternaire sur les arguments de méthode pour résoudre votre requête.

 name.setChecked(name.isChecked() ? true : false);

Soit dit en passant, la meilleure solution à votre problème est

 name.setChecked(name:isChecked());

1voto

Venkata Raju Points 174

En Javascript il est possible d'appeler des méthodes qui ne renvoient rien (indéfini)

 function simpleTest()
{
    var flag = true;
    flag ? alert("true") : alert("false");
}

alertes true

0voto

Android Points 54

Vous devez renvoyer une valeur et cela ne fonctionnera pas si vous voulez qu'elle agisse comme une méthode void qui effectue une action sans renvoyer de valeur.

J'espère que cela t'aides...

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