Personnellement , je aime l' exclusivité ou , ^
, l' opérateur quand il est logique dans le contexte des contrôles booléens en raison de sa concision. Je préfère de loin écrire
if (boolean1 ^ boolean2)
{
//do it
}
que
if((boolean1 && !boolean2) || (boolean2 && !boolean1))
{
//do it
}
mais je reçois souvent des regards confus de la part d'autres développeurs Java expérimentés (pas seulement les débutants), et parfois des commentaires sur la façon dont il ne devrait être utilisé que pour des opérations au niveau du bit.
Je suis curieux de connaître les meilleures pratiques concernant l'utilisation de l' ^
opérateur.
bool1 ^ bool2 ^ bool3
plus de sens pour moi quebool1 != bool2 != bool3