Je dois faire une instruction if dans laquelle sa valeur dépend de N autres conditions. En particulier, elle doit retourner vrai seulement quand une des N conditions est vraie (si plus d'une condition est vraie, elle doit retourner faux). Plus formellement, if (1, 2, 3 ... N)
doit évaluer vrai si et seulement si une seule des déclarations est vraie sinon, il évalue faux.
J'ai mis en œuvre cette méthode,
boolean trueOnce(boolean[] conditions) {
boolean trueOnce = false;
for (boolean condition : conditions) {
if (condition) {
if (!trueOnce) {
trueOnce = true;
} else {
trueOnce = false;
break;
}
}
}
return trueOnce;
}
mais je demande quelque chose de plus pratique. Je travaille avec Java, mais je pense que ce problème est universel pour tous les langages. Merci.
EDIT : cette méthode fait très bien l'affaire, mais ma question est la suivante : est-ce que Java (ou tout autre langage) a une façon plus pratique de faire cela (c'est-à-dire sans même implémenter une méthode entière) ?