Hallo, ich möchte ein CMDTool machen und habe ein Problem. Also ich habe einen scanner gemacht und wenn man /help eingibt funktioniert es. Wenn man allerdings zuerst zbsp /Rechner eingibt funktioniert es nicht. sondern erst beim 2. mal. Also möchte ich das bei jeder eingabe alles funktioniert. Hier ein Teil des Codes:
public CMDAusgabe() {
Scanner inputs = new Scanner(System.in);
System.out.println("~Testing V 0.1~");
System.out.println("Für Hilfe: /help");
if (inputs.next().equalsIgnoreCase("/help")) {
System.out.println("Für den Taschenrechner: /Rechner");
System.out.println("Für den TextSpammer: /TextSpammer");
} else if (inputs.next().equalsIgnoreCase("/Rechner")) {
System.out.println("Rechner startet....");
new Fkts();
new RechenModule();
}else if(inputs.next().equalsIgnoreCase("/Textpammer")) {
new TextSpammer();
}
}
Durch inputs.next() wird immer das nächste Token gelesen. Wenn inputs.next() in der zweiten if-Bedingung aufgerufen wird, gab es zuvor in der ersten if-Bedingung also bereits einen Aufruf, der das erste Token gelesen hat. Beim zweiten Aufruf wird deshalb das zweite Token gelesen.
@Meniskusschaden ja schon klar aber wie kriege ich hin dass alle befehle gehen? und auch danach noch /help usw geht.. egal wie oft man / help eingibt. wenn ich das 10 mal eingebe dann soll des auch 10 mal ausgeführt werden. lg
System.out.println("~CMDTool V 1.1~");
System.out.println("Für Hilfe: /help");
String befehl = inputs.next();
switch (befehl) {
case "/help":
System.out.println("Für den Taschenrechner: /Rechner");
System.out.println("Für den TextSpammer: /TextSpammer");
System.out.println("/FensterSpammer");
System.out.println("Für Credits: /Credits");
System.out.println("Zum schließen: /Exit");
System.out.println("Es gibt ein Secret ;D");
break;
case "/Help":
System.out.println("Für den Taschenrechner: /Rechner");
System.out.println("Für den TextSpammer: /TextSpammer");
break;
case "/HELP":
System.out.println("Für den Taschenrechner: /Rechner");
System.out.println("Für den TextSpammer: /TextSpammer");
break;
case "/Rechner":
System.out.println("Rechner startet....");
new Fkts();
new RechenModule();
break;
case "/rechner":
System.out.println("Rechner startet....");
new Fkts();
new RechenModule();
break;
case "/RECHNER":
System.out.println("Rechner startet....");
new Fkts();
new RechenModule();
break;
case "/TextSpammer":
new TextSpammer();
TextSpammer.start(null);
break;
case "/Textspammer":
new TextSpammer();
TextSpammer.start(null);
break;
case "/textspammer":
new TextSpammer();
TextSpammer.start(null);
break;
case "/TEXTSPAMMER":
new TextSpammer();
TextSpammer.start(null);
break;
Genau deshalb sollte Regentonne Java-Tags verwenden, um das zu vermeiden.
Wiederholt auffällig geworden, ich wäre dafür, den nicht weiter zu füttern und auch denn Acc zu löschen.
Genau deshalb sollte Regentonne Java-Tags verwenden, um das zu vermeiden.
Wiederholt auffällig geworden, ich wäre dafür, den nicht weiter zu füttern und auch denn Acc zu löschen.