Ich versuche, ein sehr einfaches Spiel zu erstellen, in dem mehrere Spieler verschiedener Typen versuchen, eine Zahl in einem Bereich zu erraten. Ich habe eine Funktion gemacht, um eine Reihe von Spielern zu initialisieren, und ich habe switch-case dafür verwendet.Alle Fälle in Switch ausgeführt, während nur einer ausgeführt werden soll
Aus irgendeinem Grund, wenn ich eine Nummer, es geht über alle Fälle nach ihm, auch wenn es nicht genug Zellen in der Anordnung sind. Wenn zum Beispiel 2 eingegeben wird, wird der Wert für den Typ HUMAN, es wurden auch die Fälle für 3 und 4- und Spieler der Typen COMPUTER und GUMBLER erstellt. Hier
ist der Code:
String name;
int count = 0;
System.out.println("How many players will participate?");
players = new Player[reader.nextByte()];
for (Player player: players)
{
count++;
System.out.print("\n1)Name of the player: ");
name = reader.next();
System.out.println("What will be its type? WRITE A NUMBER\n1- Monley\n2-Human\n3-Gumbler\n4-Computer");
switch (reader.nextInt())
{
case 1:
player = new Monkey (name, MAXIMUM, MINIMUM);
System.out.println("A moneky was created");
case 2:
player = new Human (name);
System.out.println("A human was created");
case 3:
player = new Gumbler (name, MAXIMUM, MINIMUM);
System.out.println("A gummbler was created");
case 4:
player = new Computer (name, MAXIMUM, MINIMUM);
System.out.println("A computer was created");
}
}
MAXIMUM
und MINIMUM
sind die minimalen und maximalen Zahlen die Zahl erraten werden muss sein kann. Human
, Monkey
, Computer
und Gumbler
sind Klassen, die die ABSRACT-Klasse Player
erweitern. players
ist das Array von Spielern (vom Typ Player
).
Ich empfehle Ihnen, die Java-Tutorials auf der Oracle-Website zu lesen. Hier ist ein Beispiel https://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html –