Façon la plus propre de basculer d'une variable booléenne en Java?
Est-il un meilleur moyen de contrer un booléen en Java qu'un simple if-else?
if (theBoolean) {
theBoolean = false;
} else {
theBoolean = true;
}
- oh nice, j'allais poser la même question, bien que ma question aurait été spécifique javascript/as3, ou ECMAScript en général, je suppose... qui sera facilement être couverts par cette question.
- Que faire si il n'y est pas ! opérateur ??
Vous devez vous connecter pour publier un commentaire.
--
de l'opérateur (en fait, deux d'entre eux, avec deux++
opérateurs), mais ne définit pas une!!
de l'opérateur. Si vous voulez-(-(integer))
vous pouvez utiliser l'espace blanc entre les deux-
caractères. Mais!!
s'analyse comme deux!
opérateurs, indépendamment de l'espace blanc.bool!!
Moins de touches si votre variable est de plus de quatre lettres
theBoolean ^= shouldBeNegated;
theBoolean = !theBoolean;
outheBoolean = theBoolean ? false : true;
true
dans une classeT
et vous l'appelezt
, ensuite, vous pouvez enregistrer une séquence de touches:myVal ^= T.t;
. Pour ne pas parler d'une statique à l'importation...myVal ^= t;
... Illimité powah!Il y a plusieurs
Le "évident" façon (pour la plupart des gens)
Le "plus court" façon (la plupart du temps)
Les plus "visuel" de façon (plus l'incertitude)
Supplémentaire: Choisir et utiliser un appel de méthode
Depuis la cession de l'opérateur renvoie toujours à ce qui a été attribuée, ce sera basculer la valeur par l'opérateur au niveau du bit, et ensuite de retour à la nouvelle valeur attribuée à être utilisé dans l'appel de méthode.
C
certainement, mais dansJava
il n'est pas permis de mélanger les booléens et entier (aussi des choses commewhile(1)
ne sont pas possible en Java).Si vous utilisez Booléenne valeurs NULL et de les examiner de faux, essayez ceci:
Si vous n'êtes pas remise Booléenne valeurs NULL, essayez ceci:
Ce sont les plus propre parce qu'ils montrent l'intention de la signature de la méthode, sont plus faciles à lire par rapport à la ! l'opérateur, et peut être facilement corrigés.
Utilisation
Bien sûr, si vous utilisez Groovy ou une langue qui permet à des méthodes d'extension, vous pouvez enregistrer une extension et il suffit de faire:
Boolean
et vraiment basculer dans la méthode (mais encore un peu ambigu).Si vous ne faites pas quelque chose de particulièrement professionnel, vous pouvez toujours utiliser un Util de classe. Ex, un util classe à partir d'un projet de classe.
puis il suffit de créer un objet Util
Util u = new Util();
et avoir quelque chose pour le retour
System.out.println( u.flip(bool) );
Si tu vas finir à l'aide de la même chose et plus, l'utilisation d'une méthode, et surtout si c'est à travers les projets, faire un Util de classe. Je ne sais pas ce que la norme de l'industrie est cependant. (Programmeurs expérimentés hésitez pas à me corriger)
Avant:
Après: