Das vollständige Programm steht unten.
Das Programm wurde verbessert und erlaubt jetzt den Anwender die Farbe einzugeben.
Das Programm verwendet die charAt( int index )
-MethodeString
.
Diese Methode gibt in einzelnes Zeichen eines Strings zurück.
Das erste Zeichen eines Strings hat den Index 0,
das nächste hat den Index 1 und so weiter.
(Denkt daran: Ein String ist ein Objekt, auch wenn es nur ein Zeichen enthält.
Die charAt()
-Methode muss hier verwendet werden um ein char
zu holen, das dann in der switch
-Anweisung verwendet wird.)
import java.util.Scanner; class Switcher { public static void main ( String[] args ) { char farbe = 'G' ; String meldung = "Die Farbe ist"; String userIn; Scanner scan = new Scanner( System.in ); System.out.print("Geben Sie einen Buchstaben fuer eine Farbe ein: "); userIn = scan.nextLine(); farbe = userIn.charAt( 0 ); // 1. Buchstaben holen switch ( farbe ) { case 'r': case 'R': meldung = meldung + " rot" ; break; case 'o': case 'O': meldung = meldung + " orange" ; break; case 'g': case 'G': meldung = meldung + " gelb" ; break; case 'b': case 'B': meldung = meldung + " blau" ; break; case 'v': case 'V': meldung = meldung + " violett" ; break; default: meldung = meldung + " unbekannt" ; } System.out.println ( meldung ) ; } }
Könnte das Programm auch mit if
-Anweisungen geschrieben werden?