我目前正在做一个学校项目,在该项目中我必须询问用户他/她的性别,然后显示一个有效的错误。但由于某种原因,在让用户再次输入之前,循环总是执行两次。 示例:
Veuillez entrer le sex de l'individu f/F ou h/H: e
Erreur veuillez entrer des valeurs valides
Veuillez entrer le sex de l'individu f/F ou h/H:
Erreur veuillez entrer des valeurs valides
Veuillez entrer le sex de l'individu f/F ou h/H:
这是代码
System.out.println ("Veuillez entrer le sex de l'individu f/F ou h/H: "); //first time asking for user input
sex = Clavier.lireChar();
while ((sex != ('f') || sex != ('F')) || (sex != ('h') || sex != ('H'))){
System.out.println ("Erreur veuillez entrer des valeurs valides"); //error message
System.out.println ("Veuillez entrer le sex de l'individu f/F ou h/H: "); //asking for user inoput again
sex = Clavier.lireChar();
}
if (sex == ('f') || sex == ('F')) {
nbFemmes = nbFemmes + 1;
} else if (sex == ('h') || sex == ('H')) {
nbHommes = nbHommes +1;
}
最佳答案
问题出在您的 while 条件逻辑上。尝试以下操作并确保您理解它。如果您不明白条件逻辑,请告诉我。快乐编码!
while ((sex != ('f') && sex != ('F')) && (sex != ('h') && sex != ('H'))){
System.out.println ("Erreur veuillez entrer des valeurs valides"); //error message
System.out.println ("Veuillez entrer le sex de l'individu f/F ou h/H: "); //asking for user inoput again
sex = Clavier.lireChar();
}
关于java - 循环总是执行两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60081571/