Neuling hier,
Ich habe zwei Variablen, die Zufallszahlen über .Random
generieren. Ich möchte, dass sie weiterrollen, bis beide Variablen gleichzeitig zwei verschiedene Werte erzeugen. Daher verwende ich while
Schleife mit &&
für diesen Zweck. Wie ich verstanden habe, kann man mich korrigieren, wenn ich falsch bin, while ((diceRolled1 != 5) && (diceRolled2 != 4))
die Linie als übersetzt, Walzen halten, bis die Werte von diceRolled1
-5 nicht gleichUNDdiceRolled2
ist bis 4 nicht gleich. Aber das Programm endet, wenn eine Variable mit ihrem Wert übereinstimmt (diceRolled1 = 5 ODER diceRolled2 = 4). Das ist nicht was &&
soll, oder? Ich habe den Code wie 10-mal ausgeführt, aber nicht ein einziges Mal generiert 5 und 4 zur gleichen Zeit.Java - UND Operator funktioniert nicht
Ich versuchte auch ==
auf beiden Seiten und jeder Seite, aber in diesem Fall lief das Programm überhaupt nicht, noch gab es irgendeinen Fehler.
Ihre Hilfe wird sehr geschätzt. Danke
import java.util.Random;
import static java.lang.System.out;
public class DiceRoller {
public static void main(String[] args) {
Random dice1 = new Random();
Random dice2 = new Random(); //Removing this doesn't work either
int diceRolled1 = 0;
int diceRolled2 = 0;
while ((diceRolled1 != 5) && (diceRolled2 != 4)) { //& didn't work either
diceRolled1 = dice1.nextInt(6) + 1;
diceRolled2 = dice2.nextInt(6) + 1;
out.println(diceRolled1 + " " + diceRolled2);
}
out.println("Program ends");
}
}
Danke. Das hat gut funktioniert –