char im switch

Sunny81

Aktives Mitglied
Hi Leute,

gibt es eine Funktion mit der ich eine Character eingabe im Switch ohne Fehlermeldung bewältigen kann.
Sprich:

case 1: blablabla
break;

case 2: blablabla
break;

case 3: blablabla
break;

Und wenn man jetzt ein a beispielsweiße eingibt.

Danke
 

eRaaaa

Top Contributor
??
Java:
	char key = 'a';
	switch (key) {
	case 'a':
	    System.out.println("A");
	    break;
	case 'b':
	    System.out.println("B");
	    break; //usw....
	default:
	    break;
	}
 

Sunny81

Aktives Mitglied
Oh das wird aber ein langer code.
Gibts keine Möglichkeit dass ich bei allen buchstaben : system.out.print("Flasche Taste");
ausgeben lasse?

Danke
 

Sunny81

Aktives Mitglied
Habe eine Abfrage in der man case 1 - 4 wählen kann und einen default.
Aber wenn man einen Buchstaben eingibt kommt die Fehlermeldung.
Würde bei dem Fall gerne system.out.print("Falsche Taste");
ausgeben.

Danke
 

eRaaaa

Top Contributor
Also ich versteh ehrlich gesagt immer noch nicht was dein Problem ist? :D
Zeig doch mal ein Stückchen Code...und von was für eine Fehlermeldung redest du eig. die ganze Zeit? :D
(also ich verstehe es jetzt so, dass man eine Zahl 1-4 eingeben kann und du willst, wenn der User was anderes eingibt, das System.out.println ausgeben wird? Dann schreib das doch einfach unter default ?! )
 

Sunny81

Aktives Mitglied
[JAVA=42]
public class pc
{

private String prozessor;
private int ram;
private int festplatte;
static int counter=0;
String Kuerzel;
int pcnummer;
String [] Objekt = {"PC", "Laptop"};

String [] cpuname = {"Intel", "Amd"};
int [] cpupreis = {300, 200};

int [] ramgroesse = {4, 8, 16};
int [] rampreis = {100,200,300};

int [] festplattengroesse = {160,250,500};
int [] festplattenpreis = {100,200,300};
public void setProzessor(String prozessor)
{
this.prozessor = prozessor;
}

public String getProzessor()
{
return prozessor;
}

public void setRam(int ram)
{
this.ram=ram;
}

public int getRam()
{
return ram;
}

public void setFestplatte(int festplatte) {
this.festplatte = festplatte;
}

public int getFestplatte() {
return festplatte;
}




public pc(String pprozessor, int pram, int pfestplatte)
{
prozessor=pprozessor;
ram=pram;
festplatte=pfestplatte;
counter++;
pcnummer = (100 + counter);

}




public String generiereKuerzel()
{
Kuerzel = prozessor.substring(0,2);
return Kuerzel.toUpperCase();
}



public void print(int i)
{
IO.writeln("Ihr " + Objekt + " wurde erfolgreich zusammengestellt!"+
"\nDie RechnungsID lautet: " + generiereKuerzel() + " " + pcnummer + "!" +
"\nProzessor: " + prozessor +
"\nRam: " + ram +
"\nFestplatte " + festplatte +
"\nAnzahl: " + counter +
"\nPreis: " + calc());
}



public int calc()
{
int preis=0;

for(int i=0; i<cpuname.length; i++)
{

if(cpuname.equalsIgnoreCase(prozessor))
{
preis = preis + cpupreis;
}

}
for(int i=0; i<ramgroesse.length; i++)
{

if(ramgroesse == ram)
{
preis = preis + rampreis;

}
}

for(int i=0; i<festplattengroesse.length; i++)
{

if(festplattengroesse == festplatte)
{
preis = preis + festplattenpreis;

}
}


return preis;
}



} // class close[/code]
 

Sunny81

Aktives Mitglied
[JAVA=42]public class client
{

public static String prozessor=null;
public static int ram=0;
public static int festplatte=0;

public static void main (String args[])
{
while(true)
{
int select = IO.promptAndReadInt("Bitte wählen Sie aus den Menupunkten aus:\n\n"+
"1 um einen PC zu erstellen!\n"+
"2 um einen LapTop zu erstellen!\n" +
"3 um das Menu zu verlassen!\n");

switch(select)
{
case 1: auswahl();
pc p1 = new pc(prozessor, ram, festplatte);
p1.print(0);
break;

case 2:auswahl();
pc p2 = new pc(prozessor, ram, festplatte);
p2.print(1);
break;

case 3: IO.writeln("Vielen Dank für Ihren besuch - Auf Wiedersehen!\n\n");


break;

default: IO.writeln("Falsche Taste - Bitte erneut wählen!\n");


} // while close
} // switch close
} // main close

public static void auswahl()
{
while(prozessor==null)
{
prozessor = IO.promptAndReadString("Bitte geben Sie den gewünschten Prozessor ein!");

if(!"Intel".equalsIgnoreCase(prozessor) && !"Amd".equalsIgnoreCase(prozessor))
{
IO.writeln("Ungültig - Bitte erneut wählen!\n");
prozessor=null;
}
else
{
IO.writeln("Erfolgreich hinzugefügt!\n");
}
}
while(ram==0)
{
ram = IO.promptAndReadInt("Bitte geben Sie den gewünschten Ramspeicher ein!");
if(ram<4 || ram>16)
{
IO.writeln("Ungültig - Bitte erneut wählen!\n");
ram=0;

}
else
{
IO.writeln("Erfolgreich hinzugefügt!\n");
}
}

while(festplatte==0)
{
festplatte = IO.promptAndReadInt("Bitte geben Sie den gewünschten Festplattenspeicher ein!");
if(festplatte<160 || festplatte>500)
{
IO.writeln("Ungültig - Bitte erneut wählen!\n");
festplatte=0;

}
else
{
IO.writeln("Erfolgreich hinzugefügt!\n");
}
}
}

} // class close


[/code]
 

eRaaaa

Top Contributor
Und was hat das jetzt mit dem Switch zu tun? Das liegt doch wohl eher an deiner IO-Klasse ?
Java:
int select = IO.promptAndReadInt("Bitte wählen Sie aus den Menupunkten aus:\n\n"+
                                            "1 um einen PC zu erstellen!\n"+
                                            "2 um einen LapTop zu erstellen!\n" +
                                            "3 um das Menu zu verlassen!\n");

Du liest halt ein int und kein Buchstaben(char) und höchstwahrscheinlich fliegt dann eine Exception.
Mit dem Switch hat das Ganze wenig zu tun, daher auch die ganze Zeit die Verwirrung!
Mach ein try catch Block darum und fange die Exception auf!
 

hdi

Top Contributor
Gibt es in deiner promptAndReadInt()-Methode irgendwo so etwas:

Code:
try{...} catch(...){...}

Am besten du zeigst mal diese Methode.
 

eRaaaa

Top Contributor
Java:
	try {
	    int select = IO
		    .promptAndReadInt("Bitte wählen Sie aus den Menupunkten aus:\n\n"
			    + "1 um einen PC zu erstellen!\n"
			    + "2 um einen LapTop zu erstellen!\n"
			    + "3 um das Menu zu verlassen!\n");
	} catch (java.lang.NumberFormatException nfe) {
	    System.out.println("Falsche Eingabe!");
	}
 

Spin

Top Contributor
Zudem muss man aber auch den Fehler abfangen der entsteht, wenn man die 4 eingibt oder etwa nicht ;)

Denn bei der 4 haut er dir auch nen Fehler, und zwar dass es die Zahl nicht gibt.

Dann schreib dir schnell ne if bedingung.

Java:
if(zahl< 4){

//dein code
}
 else {
System.out.println("Fehler");
}


grüße
 

hdi

Top Contributor
Spin, das hat er schon berücksichtigt:

Java:
default: IO.writeln("Falsche Taste - Bitte erneut wählen!\n");

Aber bei case 3 sollte nach der Meldung auch ein
Code:
System.exit(0)
rein, sonst kann man das Programm nicht richtig beenden.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M error: '.class' expected switch(char) Java Basics - Anfänger-Themen 32
F Switch case wird als char nicht erkannt.... Java Basics - Anfänger-Themen 6
M char und switch Problem Java Basics - Anfänger-Themen 4
A Zeichenkette teilen mit Substring oder Char Array Java Basics - Anfänger-Themen 14
P Wieso kann ich als Index für einen Array einen Char angeben? Java Basics - Anfänger-Themen 3
D 2D Char Array into String Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
Tommilee Char ausgeben Java Basics - Anfänger-Themen 5
JordenJost char variable funktioniert irgendwie nicht a+b ergibt nicht à Java Basics - Anfänger-Themen 4
java-starter Erste Schritte Eingabe in Char wert umwandeln Java Basics - Anfänger-Themen 7
P9cman Char Index rekursiv finden Java Basics - Anfänger-Themen 4
M Wie kann eine Methode für ein vorhandenes "Array von char" einen Index-Wert zurückliefern? Java Basics - Anfänger-Themen 3
Fats Waller Compiler-Fehler Kann ich einen String und die Summe zweier Char Werte mittels der println Anweisung ausgeben Java Basics - Anfänger-Themen 4
C String/Char-API Java Basics - Anfänger-Themen 13
U Char zu einem String machen Java Basics - Anfänger-Themen 1
O Ich ahbe einen char und diesen soll ich bei .matches prüfen, also ob der char in meiner Zeichenkette vorhanden ist, wie mache ich das? Java Basics - Anfänger-Themen 9
W char über die Konsole? Java Basics - Anfänger-Themen 7
C char c Java Basics - Anfänger-Themen 13
D String und char in String speichern Java Basics - Anfänger-Themen 5
A Löschen von Leerzeichen in einem char array ohne methoden Java Basics - Anfänger-Themen 6
S zweidimensionale char arrays Java Basics - Anfänger-Themen 14
R String in char-Array übertragen Java Basics - Anfänger-Themen 5
P Methoden Namen trennen mit .substring(), char.At(), .lenght() Java Basics - Anfänger-Themen 8
Z Char Array an zufälligen stellen mit einem "x" füllen. Java Basics - Anfänger-Themen 4
A Datentyp char Java Basics - Anfänger-Themen 27
A Char und modulo Java Basics - Anfänger-Themen 8
A char array wird überschrieben Java Basics - Anfänger-Themen 6
E 2D Array - char durch die Matrix "wandern" lassen Java Basics - Anfänger-Themen 7
I Methoden char Array Aufgabe (bitte hierbei um Hilfe) Java Basics - Anfänger-Themen 3
D Datentypen Char deklaration Java Basics - Anfänger-Themen 4
I wieder mit einer Umwandelung habe ich Problem (diesmal von char Array zu char) Java Basics - Anfänger-Themen 1
I char Array to String Java Basics - Anfänger-Themen 3
C (char) Array einlesen Java Basics - Anfänger-Themen 8
J Java char.at() Probelm Java Basics - Anfänger-Themen 12
S char auf buchstabe/zeichen prüfen Java Basics - Anfänger-Themen 1
H char-Array Java Basics - Anfänger-Themen 22
M Die länge von char Java Basics - Anfänger-Themen 6
T Methoden char wird nicht ausgegeben Java Basics - Anfänger-Themen 3
R Fehler bei ASCII Char zu Int Umwandlung Java Basics - Anfänger-Themen 2
C Methoden String in char Array Java Basics - Anfänger-Themen 3
T Datentypen char als Buchstaben statt als Zahl ausgeben Java Basics - Anfänger-Themen 4
kokojamboo92 char mehrfach ausgeben.. Java Basics - Anfänger-Themen 2
T Erste Schritte Char 'Anführungszeichen' Tastaturkürzel Java Basics - Anfänger-Themen 1
H Compiler-Fehler Out of Bunce Exception bei einem Char Java Basics - Anfänger-Themen 6
E Wie wird in Java ein Char-Array terminiert ? Java Basics - Anfänger-Themen 15
C char in String suchen und durch anderen String ersetzen Java Basics - Anfänger-Themen 2
C Compiler-Fehler from int to char Java Basics - Anfänger-Themen 2
A Methoden Char-Arrays auf aufeinanderfolgende Elemente vergleichen! Java Basics - Anfänger-Themen 7
T Object zu Char zu String Java Basics - Anfänger-Themen 6
W Char Array bearbeiten Java Basics - Anfänger-Themen 6
A Char-Array erstellen Java Basics - Anfänger-Themen 35
D Hilfe bei int wert von char Java Basics - Anfänger-Themen 7
W String auf char[] umwandeln Java Basics - Anfänger-Themen 3
Z char Array unbekanntes Zeichen selbstständig anlegen Java Basics - Anfänger-Themen 6
M Bestimmen, wie oft ein Char in einem Array vorkommt Java Basics - Anfänger-Themen 2
BuTTerBroTHDx Char Wert in int casten ? Java Basics - Anfänger-Themen 4
D Variablen Variable char vergleichen Java Basics - Anfänger-Themen 5
A Probleme beim Methodenaufruf von char[] ! Java Basics - Anfänger-Themen 10
C char array-positionstausch Java Basics - Anfänger-Themen 6
R Anzahl von Zeichen in einem Char Array Java Basics - Anfänger-Themen 4
C String-zaehleZeichen(String str,char[]c) Java Basics - Anfänger-Themen 9
L zweidimensionales char array reihenfolge ändern ? Java Basics - Anfänger-Themen 2
D Best Practice String aufbau - Char Array oder Anhängen Java Basics - Anfänger-Themen 11
S For Schleife Char Array Java Basics - Anfänger-Themen 1
V char Eingabe aber nur für Buchstaben Java Basics - Anfänger-Themen 4
K PasswordField auslesen und in char speichern Java Basics - Anfänger-Themen 2
L Frage zum Zeichensatz Char Java Basics - Anfänger-Themen 2
L Frage zum Typ Char (Zeichensatz) Java Basics - Anfänger-Themen 8
J Fehlermeldung : cannot invoke char(at) int on the primitive type int --- Anfänger Java Basics - Anfänger-Themen 5
P Char aus einem String auswählen Java Basics - Anfänger-Themen 4
W char-Array auf bestimmte Zeichen prüfen Java Basics - Anfänger-Themen 10
J Buchstabe (char) an zufällige Position eines Strings einfügen Java Basics - Anfänger-Themen 1
B char Array mit ints Java Basics - Anfänger-Themen 7
F Char in Long umwandeln? Java Basics - Anfänger-Themen 2
J Char-Array - NullPointerException Java Basics - Anfänger-Themen 3
X Compiler-Fehler Possible loss of precision bei addition von int und char Java Basics - Anfänger-Themen 5
J char-Array rückwärts ausgeben und in neues Char-Array speichern Java Basics - Anfänger-Themen 3
D Methode die statt char[] ein "null" zurück gibt Java Basics - Anfänger-Themen 8
P Methoden suche funktion die char wert ausgibt wenn man numerischen wert und radix angibt Java Basics - Anfänger-Themen 1
R Char wird in System.out.print(); nicht ausgegeben Java Basics - Anfänger-Themen 6
J Char-Rechnen Java Basics - Anfänger-Themen 8
E Input/Output convert string to two dimensional char and output = matrix Java Basics - Anfänger-Themen 2
S Array - index von Benutzer eingegebenen char ausgeben Java Basics - Anfänger-Themen 3
M char Array füllen Java Basics - Anfänger-Themen 2
H ArrayList mit char- Array befüllen Java Basics - Anfänger-Themen 12
S überschneidende Char-Arrays, zu einem Längeren verbinden Java Basics - Anfänger-Themen 7
M Warum ist char a + char b 196 Java Basics - Anfänger-Themen 4
J Datentypen Cast von int zu char führ zu 'Sonderzeichen' Java Basics - Anfänger-Themen 2
M Erste Schritte konvertierung von int zu char Java Basics - Anfänger-Themen 3
B Char-Vergleich Sonderzeichen Java Basics - Anfänger-Themen 6
A Char Bytes Umwandlung und Darstellung Java Basics - Anfänger-Themen 3
R Input/Output einzelnes char aus .txt lesen Java Basics - Anfänger-Themen 11
P Datentypen String auf JTextField wird zu Char-Array und anschließend zu int Java Basics - Anfänger-Themen 12
M String in char-weise vergleichen und ausgeben Java Basics - Anfänger-Themen 5
V while verlassen, char Java Basics - Anfänger-Themen 2
S Datentypen Ein String in ein Char und ein Double wandeln Java Basics - Anfänger-Themen 2
A Char to String Java Basics - Anfänger-Themen 5
R Erste Schritte Rechnenoperationen mit byte, short und char Java Basics - Anfänger-Themen 8
W Char als Int speichern Java Basics - Anfänger-Themen 10
W Variablen Rechnen mit "char" Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben