+1 Daumen
1,9k Aufrufe

Frage an alle Java-Programmierer unter euch! Wir haben vor kurzem angefangen mit Java zu programmieren.

Als Aufgabe sollen wir einen Getränkeautomaten programmieren.

(HINWEIS: Das mit dem Try-Catch Block sollen wir so machen)

Alles funktioniert, bis man eine Zahl eingibt, dann wird bei mir automatisch die Fehlermeldung "Fehler, bitte versuchen Sie es erneut!", ausgegeben. Kann mir jemand helfen, wieso wird, obwohl ich 1, 2 oder 3 drücke nicht das jeweilige Getränk "ausgegeben"?

Nachfolgend ist mein Code:

import java.util.Scanner;

public class Getraenkeautomat {
    public static void main(String args[]){
        int einwurf;
       
        System.out.println("Beachten Sie unsere Auswahl an Getraenken!\n");
        System.out.println("1 Euro fuer Wasser\n");
        System.out.println("2 Euro fuer Cola\n");
        System.out.println("3 Euro fuer Bier\n");
       
        try{
            Thread.sleep(3500);
        }catch(InterruptedException e){}
        System.out.println("Bitte werfen Sie den fuer Ihr Getraenk nötigen Geldbetrag ein!\n");
       
        Scanner scan = new Scanner(System.in);
        einwurf = scan.nextInt();
       
        switch(einwurf){
        case '1':
            System.out.println("Wasser wird ausgegeben!");
            break;
        case '2':
            System.out.println("Cola wird ausgegeben!");
            break;
        case'3':
            System.out.println("Bier wird ausgegeben!");
            break;
        default:
            System.err.println("Fehler, bitte versuchen Sie es erneut!");
            break;
        }
    }
}

Ich hoffe, jemand kann mir diese Informatikfrage beantworten.

Avatar von

1 Antwort

0 Daumen

Wozu die Apostrophe bei den case-Verzweigungen? Da muss "case 1: " usw. stehen.

Avatar von

Vielen Danke für die Hilfe.

Das Programm läuft jetzt = )

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community