Bonjour.
Là, c'est plutôt un problème de logique et non pas de Java ... T'as mal exprimé la condition.
Je te donne juste un exemple et je te laisse découvrir tout seul ce qui cloche:
L'utilisateur tape "2". Essayons d'evaluer toa condition:
!chaine.startsWith("1")||!chaine.startsWith("2")||!chaine.startsWith("3")||!chaine.startsWith("4")
Premier bloc (A):
!chaine.startsWith("1")
chaine="2"

renvoit true.
Second bloc (B):
!chaine.startsWith("2")
chaine="2"

renvoit false.
Premier bloc (C):
!chaine.startsWith("3")
chaine="2"

renvoit true.
Premier bloc (D):
!chaine.startsWith("4")
chaine="2"

renvoit true.
Pour résumer, A=C=D=true, B=false
Condition = A ou B ou C ou D = true ou false ou true ou true
true.
Tu ne remarques rien ?
Partager