hey!
ich hab ein kleines Programm geschrieben dass mir ein Menü anzeigen soll, mit dessen hilfe ich wählen will ob Mensch gegen Computer etc. spielen soll. leider bekomme ich bei meinem while aufruf (Z.12) den Fehler "empty statement after while" und "orphanend case" bei case 2-4 angezeigt. Ist es nicht möglich die Objekte als Fallunterscheidung zu erzeugen? ???:L
mfg lulas
[Java]
public static void main(String[] args) {
System.out.println("Spiel gestartet");
System.out.println();
Spielbrett sb = new Spielbrett();
boolean fertig = false;
// Starte das Programm mit einem Spielmenü
System.out.println("======================");
System.out.println("======Spielmenü=======");
System.out.println("======================");
//Schleifenbeginn
while (!fertig) {
//Menü
System.out.println();
System.out.println("1: Mensch vs. Mensch");
System.out.println("2: Mensch vs. Computer");
System.out.println("3: Computer vs. Computer");
System.out.println("4: Spiel beenden");
System.out.println();
System.out.println("Bitte Wählen und Enter drücken.");
int auswahl = new java.util.Scanner(System.in).nextInt();
//Fallunterscheidung
switch (auswahl) {
case 1: // Mensch vs. Mensch
Spieler s1 = new Mensch();
Spieler s2 = new Mensch();
if (s2.name.equals(s1.name)) {
do {
System.out.println("Gleicher Name geht nicht! Bitte anderen Namen nennen:");
Mensch.spielerAnzahl = 2;
s2 = new Mensch();
} while (s2.name.equals(s1.name));
break;
case 2: // Mensch vs. Computer
Spieler s1 = new Mensch();
Spieler s2 = new Computer();
if(s2.name.equals(s1.name)){
do{
System.out.println("Gleicher Name geht nicht! Bitte anderen Namen nennen:");
Mensch.spielerAnzahl = 2;
s2 = new Computer();
}while(s2.name.equals(s1.name));
break;
case 3: // Computer vs. Computer
Spieler s1 = new Computer();
Spieler s2 = new Computer();
if(s2.name.equals(s1.name)){
do{
System.out.println("Gleicher Name geht nicht! Bitte anderen Namen nennen:");
Mensch.spielerAnzahl = 2;
s2 = new Computer();
}while(s2.name.equals(s1.name));
break;
case 4: // Programm beenden
fertig=true;
break;
default://Falsche Zahl eingegeben
System.out.println("Eingabefehler!");
}
}
}
[/Java]
ich hab ein kleines Programm geschrieben dass mir ein Menü anzeigen soll, mit dessen hilfe ich wählen will ob Mensch gegen Computer etc. spielen soll. leider bekomme ich bei meinem while aufruf (Z.12) den Fehler "empty statement after while" und "orphanend case" bei case 2-4 angezeigt. Ist es nicht möglich die Objekte als Fallunterscheidung zu erzeugen? ???:L
mfg lulas
[Java]
public static void main(String[] args) {
System.out.println("Spiel gestartet");
System.out.println();
Spielbrett sb = new Spielbrett();
boolean fertig = false;
// Starte das Programm mit einem Spielmenü
System.out.println("======================");
System.out.println("======Spielmenü=======");
System.out.println("======================");
//Schleifenbeginn
while (!fertig) {
//Menü
System.out.println();
System.out.println("1: Mensch vs. Mensch");
System.out.println("2: Mensch vs. Computer");
System.out.println("3: Computer vs. Computer");
System.out.println("4: Spiel beenden");
System.out.println();
System.out.println("Bitte Wählen und Enter drücken.");
int auswahl = new java.util.Scanner(System.in).nextInt();
//Fallunterscheidung
switch (auswahl) {
case 1: // Mensch vs. Mensch
Spieler s1 = new Mensch();
Spieler s2 = new Mensch();
if (s2.name.equals(s1.name)) {
do {
System.out.println("Gleicher Name geht nicht! Bitte anderen Namen nennen:");
Mensch.spielerAnzahl = 2;
s2 = new Mensch();
} while (s2.name.equals(s1.name));
break;
case 2: // Mensch vs. Computer
Spieler s1 = new Mensch();
Spieler s2 = new Computer();
if(s2.name.equals(s1.name)){
do{
System.out.println("Gleicher Name geht nicht! Bitte anderen Namen nennen:");
Mensch.spielerAnzahl = 2;
s2 = new Computer();
}while(s2.name.equals(s1.name));
break;
case 3: // Computer vs. Computer
Spieler s1 = new Computer();
Spieler s2 = new Computer();
if(s2.name.equals(s1.name)){
do{
System.out.println("Gleicher Name geht nicht! Bitte anderen Namen nennen:");
Mensch.spielerAnzahl = 2;
s2 = new Computer();
}while(s2.name.equals(s1.name));
break;
case 4: // Programm beenden
fertig=true;
break;
default://Falsche Zahl eingegeben
System.out.println("Eingabefehler!");
}
}
}
[/Java]
Zuletzt bearbeitet: