La valeur d'entrée int
n'est constituée que de 1 ou 0. Je peux résoudre le problème en écrivant un if else
déclaration.
N'y a-t-il pas un moyen de convertir le int
en boolean
?
Je suppose 0
signifie false
(ce qui est le cas dans de nombreux langages de programmation). Cela signifie que true
est not 0
(certaines langues utilisent -1
d'autres utilisent 1
; ne fait pas de mal à être compatible avec non plus). Donc, en supposant que "mieux" signifie moins de frappe, vous pouvez simplement écrire:
bool boolValue = intValue != 0;
Blague à part, si vous vous attendez à ce que votre entier d'entrée soit un zéro ou un, vous devriez vraiment vérifier que c'est le cas.
int yourInteger = whatever;
bool yourBool;
switch (yourInteger)
{
case 0: yourBool = false; break;
case 1: yourBool = true; break;
default:
throw new InvalidOperationException("Integer value is not valid");
}
Le Convert
prêt à l'emploi ne vérifiera pas cela; ni yourInteger (==|!=) (0|1)
.