Variablen Switch Bedingungen

mk4net

Aktives Mitglied
Hey ho,
Ich hab mal wieder eine Frage, und zwar versuche ich gerade einen extrem primitive BinärCodegenerator zu programmieren. Mein Problem hierbeis ist das ich mit einer for SChleife jedes Element in einer Char Array mit einemn Switch Statement überprüfen will.
Das eigentlich Problem besteht darin dass er irgendwie nur zwei Variablen vergleichen will aber nicht einen Wert mit einer Variable. Ich könnte jetzt natürlich 26 Chars machen für jeden Buchstaben, aber dass ist mir wirklich zu doof, da muss es doch einfach eine Andere Lösung geben oder?


mfg Nick


Code:

Main:
Java:
package firstTry;

import java.util.Scanner;

public class Main {
	
	public static String eingabe(){		
		Scanner stringEingabe= new Scanner(System.in);//fängt eingabe ab und speichert sie in nem String
		return stringEingabe.nextLine();			   //gibt den String zurück
	}
	
	public static void main(String[] args) {
		Umrechner rechner = new Umrechner();
		
		
		String eingabe =eingabe();
		System.out.println(rechner.stringToChar(eingabe.toLowerCase()));
	}

}


Umrechner:
Java:
package firstTry;

public class Umrechner {
	public char[] stringToChar(String stringEingabe){//empfängt stringEingabe
		
		char[] eingabeArray = stringEingabe.toCharArray();	//fügt den String in ein char Array ein wo jeder Buchstabe ien eigenes Kasterll kriegt	 	
		String[] ausgabeArray= new String[eingabeArray.length] ;
		
		for(int counter=0;counter == eingabeArray.length;counter++){
			switch(eingabeArray[counter]){
			case eingabeArray[counter].equals(a): ausgabeArray[counter]="1000001" ; break;
			case b: ausgabeArray[counter]="1000010" ; break;
			case c: ausgabeArray[counter]="1000011" ; break;
			case d: ausgabeArray[counter]="1000100" ; break;
			case e: ausgabeArray[counter]="1000101" ; break;
			case f: ausgabeArray[counter]="1000110" ; break;
			case g: ausgabeArray[counter]="1000111" ; break;
			case h: ausgabeArray[counter]="1001000" ; break;
			case i: ausgabeArray[counter]="1001001" ; break;
			case j: ausgabeArray[counter]="1001010" ; break;
			case k: ausgabeArray[counter]="1001011" ; break;
			case l: ausgabeArray[counter]="1001100" ; break;
			case m: ausgabeArray[counter]="1001101" ; break;
			case n: ausgabeArray[counter]="1001110" ; break;
			case o: ausgabeArray[counter]="1001111" ; break;
			case p: ausgabeArray[counter]="1010000" ; break;
			case q: ausgabeArray[counter]="1010001" ; break;
			case r: ausgabeArray[counter]="1010010" ; break;
			case s: ausgabeArray[counter]="1010011" ; break;
			case t: ausgabeArray[counter]="1010100" ; break;
			case u: ausgabeArray[counter]="1010101" ; break;
			case v: ausgabeArray[counter]="1010110" ; break;
			case w: ausgabeArray[counter]="1010111" ; break;
			case x: ausgabeArray[counter]="1011000" ; break;
			case y: ausgabeArray[counter]="1011001" ; break;
			case z: ausgabeArray[counter]="1011010" ; break;
			
			default: System.out.println("Die in Fire Newfag");break;
			
			}
			
			
			System.out.println(counter);								//zum Testen 
		}
		
		
		
		
		
		
		
		
		return eingabeArray;
	}


}
 

Fant

Bekanntes Mitglied
Du kannst einen char nach int casten und erhälst den entsprechenden ASCII-Wert. Vielleicht bringt dich das ja schon auf eine Idee..


Gruß Fant
 

AquaBall

Top Contributor
Probier mal:
Java:
for(int counter=0;counter == eingabeArray.length;counter++){
	ausgabeArray[counter]=toBinaryString((int)eingabeArray[counter]);
}

Aber du hast andere Fehler drin:
Das Case würde so nicht funktionieren, was gibst du überhaupt aus, ...?
 

mk4net

Aktives Mitglied
@Fant Danke, ich geh mal googeln ^^ :rtfm:
@AquaBall dass funktioniert nicht. Freund Googel weis leider auch keine Hilfe/bzw ich versteh die
Hilfe nicht. es wird zwar sehr oft toBinaryString erwähnt aber ich hab kein sinnvolles
CodeBeispiel gefunden in dem es funktioniert. Eclipse kann mit toBinaryString so gar
nichts anfangen. Hättest du noch ne Idee?

mfg Nick
 

AquaBall

Top Contributor
Naja, soo dumm dürfte Google doch nicht sein.
Ist halt ne Integer.Methode.

Java:
		Integer.toBinaryString(aNumber);
 

Landei

Top Contributor
Die Vergleichswerte in
Code:
switch
sind sehr beschränkt: Es müssen entweder primitive Literale ([c]1[/c], [c]0xCAFE[/c], [c]5L[/c], [c]true[/c], aber [c]float[/c] und [c]double[/c] sind aber nicht erlaubt), Enum-Werte (ab Java 5) oder String-Literale (ab Java 7) sein. Obwohl viele andere Sachen sinnvoll wären, ist Java da sehr restriktiv.
 

HimBromBeere

Top Contributor
Ein switch sieht ein bisschen anders aus:
Java:
switch (Ausdruck) {
    case ausdruck: 
        // do some stuff
        break;
    ...
    default: 
        // do some other stuff
}

Bei dir also:

Java:
switch(eingabeArray[counter]){
    case 'A': 
        // do some stuff
        break;
    case 'B': 
        // do some other stuff
        break;
    ...
    default: 
        // do some default stuff
}

Beachte: Das, was hinter case steht, ist nicht etwa der Name einer Variablen oder der Name des Falles oder ..., sondern eine Konstante.
 
Zuletzt bearbeitet:

mk4net

Aktives Mitglied
Danke für die Antwortenalso ich hab das jetzt malk so gemacht:
Java:
package firstTry;

public class Umrechner {
	public void stringToChar(String stringEingabe){//empfängt stringEingabe
		System.out.println("lold");
		char[] eingabeArray = stringEingabe.toCharArray();	//fügt den String in ein char Array ein wo jeder Buchstabe ien eigenes Kasterll kriegt	 	
		String[] binaerArray= new String[eingabeArray.length] ;
		
	    System.out.println("lold");
		
		for(int counter=0;counter == eingabeArray.length;counter++){
		    binaerArray[counter]=Integer.toBinaryString((int)eingabeArray[counter]);
		    System.out.println(binaerArray[counter]);
		}
		
		
	}


}

aber irgendwie macht er mir dass in der for-Schleife nciht, er gibt mir nichts aus.
Wisst ihr vl hilfe?

mfg Nick
 

HimBromBeere

Top Contributor
Weil die Bedingung in der for-Schleife nicht hinhaut: du vergleichst dort, ob der
Code:
counter
exakt so groß ist, wie das Array lang (was natürlich nie der Fall ist). Prüf mal lieber auf:
Code:
counter < array.length
 

AquaBall

Top Contributor
Das '==' in meinem CodeSnipsel hab ich nur aus deinem Beispiel übernommen.
Das solltest du selbst erkennen.
Hab ja dazugeschrieben, dass noch einige Fehler drin sind.

Ich glaube du musst noch einiges an Arbeit selbst reinstecken (Bücher, Google, Versuche, ...) bis du verstehst was du tippst.

Es macht keinen Sinn, jeden Versuch ins Forum zu stellen, ohne selbst zu durchdenken!
 

mk4net

Aktives Mitglied
Danke euch zwei.
@AquaBall sehr nett. Ich habe durchaus nachgedacht aber das nicht als Fehler erkannt.
Hättest es auch ganz einfach dazu schreiben können aber danke. Ich lese gerade
ein Java Buch aber wollte mal wieder was eigenes machen. und ich bin ja hier im
Anfänger Forum.

mfg Nick
 

AquaBall

Top Contributor
Richtig: AnfängerForum!

Und wir helfen ja gerne.
Aber wir können oft nicht alle Fehler aufzählen, und ein funktionierendes fertiges Programm vorzugeben ist nicht unsere Absicht.

Ich meinte auch nicht dass solche "=="-Fehler jeder hätte sehen müssen, (ich hab mich auch nicht darum gekümmert), viel Häufiger ist der "="-Fehler in Bedingungen.
Sondern ich wollte nur betonen, dass dir nach so einer Fehlersuche bei dieser Programmgröße ABSOLUT JEDES Symbol klar sein sollte warum du das SO und AN DIESER Stelle tippst, und was es macht.
 

Landei

Top Contributor
Sondern ich wollte nur betonen, dass dir nach so einer Fehlersuche bei dieser Programmgröße ABSOLUT JEDES Symbol klar sein sollte warum du das SO und AN DIESER Stelle tippst, und was es macht.

Das kann man nicht genug betonen. Bei altem Code begegnen einem manchmal "Regentanz-Codeschnipsel", bei dem jemand immer wieder ein bestimmtes Muster wiederholt, das irgendwo mal funktioniert hat, der Betreffende aber nicht oder nur halb verstanden hat, und in anderen Situationen sinnlos ist. The Daily WTF: Curious Perversions in Information Technology ist voll davon.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
C switch-case mit bedingungen? Java Basics - Anfänger-Themen 5
K Mehrere Werte in einem Switch Case parallel überprüfen Java Basics - Anfänger-Themen 23
D Switch Case Methode aufrufen Java Basics - Anfänger-Themen 3
_so_far_away_ Inventarisierungssystem brauche switch Cases und weiß nicht, wie ich e implementieren muss Java Basics - Anfänger-Themen 5
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
M error: '.class' expected switch(char) Java Basics - Anfänger-Themen 32
A switch statement Java Basics - Anfänger-Themen 4
volcanos enum und switch (neu): falschen Wert mit IllegalArgumentException oder mit EnumConstantNotPresentException abfangen ? Java Basics - Anfänger-Themen 51
X Enum Abfrage ohne if, for, while oder switch Java Basics - Anfänger-Themen 21
Lion.King switch-Befehl Java Basics - Anfänger-Themen 6
L Switch-Case Multiplikation wird nicht ausgegeben Java Basics - Anfänger-Themen 1
U Warum kann ich die Methode in der ENUM Klasse nicht aufrufen? Und warum geht die Switch nicht? Java Basics - Anfänger-Themen 8
U Warum gibt das eine Nullpointerexception? (Switch) Java Basics - Anfänger-Themen 6
P9cman Vokal Zähler mit switch case und for-Schleife Java Basics - Anfänger-Themen 4
C Potenzberechnung über switch case. Taschenrechner mit Eingabe über einen grafischen Dialog Java Basics - Anfänger-Themen 22
C if-Konstrukt durch switch-Konstrukt ersetzen Java Basics - Anfänger-Themen 14
1 Switch Case Java Basics - Anfänger-Themen 3
T Alternative für switch case Java Basics - Anfänger-Themen 1
C Taschenrechner (switch) in Taschenrechner mit Methoden umwandeln Java Basics - Anfänger-Themen 115
W Taschenrechner mit Switch case Java Basics - Anfänger-Themen 4
B Notensystem Switch-Case Java Basics - Anfänger-Themen 31
S Switch-Case zur Berechnung der Einkommensteuer Java Basics - Anfänger-Themen 15
F Switch case wird als char nicht erkannt.... Java Basics - Anfänger-Themen 6
V Switch Methode macht Code kaputt Java Basics - Anfänger-Themen 18
H Frage zur if-Bedingung bzw switch case Java Basics - Anfänger-Themen 6
S switch case fängt beim letzten case an Java Basics - Anfänger-Themen 6
J Parameterübergabe in switch? Java Basics - Anfänger-Themen 2
M Switch Java Basics - Anfänger-Themen 2
F Switch Case Problem mit Regex lösen? Java Basics - Anfänger-Themen 6
W Wieso funktioniert mein Switch Case nicht ?! Java Basics - Anfänger-Themen 9
F Switch Case Modulo berechnen Java Basics - Anfänger-Themen 12
F Erste Schritte Frage zu simplem Taschenrechner(switch) Java Basics - Anfänger-Themen 16
NoMercy BitFlags Programm (switch on/off , swap und isSet) Java Basics - Anfänger-Themen 7
S Switch-Case für eine Array-Zuordnung Java Basics - Anfänger-Themen 5
S switch und case Java Basics - Anfänger-Themen 1
L Taschenrechner mit switch und while funktioniert noch nicht richtig Java Basics - Anfänger-Themen 22
B Problem bei switch statement Java Basics - Anfänger-Themen 4
D Klassen Problem bei switch-case? Java Basics - Anfänger-Themen 2
E Input/Output Switch ausgabe anpassen bzw. anders darstellen Java Basics - Anfänger-Themen 13
A Warum funktioniert switch aber nicht if/else? Java Basics - Anfänger-Themen 23
B Wiederholen einer if/switch-case Schleife Java Basics - Anfänger-Themen 9
X Nach switch case weiter mit Auswahl Java Basics - Anfänger-Themen 7
T switch case und continue Java Basics - Anfänger-Themen 5
D switch case Code Java Basics - Anfänger-Themen 3
K Erste Schritte switch - Warum sind long/float/double/... nicht erlaubt? Java Basics - Anfänger-Themen 5
Ponychan95 Erste Schritte Switch fällt immer bis zum default durch Java Basics - Anfänger-Themen 4
P Bei Switch-Anweisung wird default-Anweisung angezeigt Java Basics - Anfänger-Themen 4
D kleiner Taschenrechner mit switch fehlerhaft Java Basics - Anfänger-Themen 1
O This in switch anweisung Java Basics - Anfänger-Themen 5
V Fehlerhafte BufferedReader/switch Benutzung? Java Basics - Anfänger-Themen 2
F Erste Schritte Switch case vs. Verschachtelte If Anweisung Java Basics - Anfänger-Themen 11
K Variablen RETURN in Case-Switch / This method must return a result of type Item Java Basics - Anfänger-Themen 4
R Methoden Switch wählt das Falsche Java Basics - Anfänger-Themen 17
B Erste Schritte Addition von double in switch-Anweisung Java Basics - Anfänger-Themen 2
M Endlosschleife bricht durch switch ab Java Basics - Anfänger-Themen 17
R Switch: Nach durchlaufen des Case wieder zum Menü Java Basics - Anfänger-Themen 3
D Array in switch Java Basics - Anfänger-Themen 3
A Switch Case Java Basics - Anfänger-Themen 5
Devil0s if vs. switch Java Basics - Anfänger-Themen 27
F Reset in der switch Anweisung Java Basics - Anfänger-Themen 3
R Compiler-Fehler Auf selben Array in mehreren "cases" vom "Switch" zugreifen Java Basics - Anfänger-Themen 11
R Switch Werte außerhalb verwenden Java Basics - Anfänger-Themen 2
D Eine Variable in mehreren "switch" Java Basics - Anfänger-Themen 24
M Switch mit String Java Basics - Anfänger-Themen 20
T Erste Schritte switch case Anweisung und if else Verzweigungen? Java Basics - Anfänger-Themen 6
A ArrayList-iteration mit Prüfung auf instanceof durch switch case? Java Basics - Anfänger-Themen 13
P Switch Case - Fließkommazahl Java Basics - Anfänger-Themen 2
Z Switch umsetzung Java Basics - Anfänger-Themen 6
lulas[]args Fehlerhafte Switch Java Basics - Anfänger-Themen 6
lulas[]args Switch Schleife - orphaned case Java Basics - Anfänger-Themen 27
W "switch" Anweisung - Rechenzeichen? Java Basics - Anfänger-Themen 5
T kleines problem mit switch case Java Basics - Anfänger-Themen 11
I Methoden Wochenkalendar switch anweisung fehlt Java Basics - Anfänger-Themen 4
C Switch Anweisung Frage Java Basics - Anfänger-Themen 8
R Switch/Case frage: Java Basics - Anfänger-Themen 12
Luk10 Frage zu Switch-Anweisung Java Basics - Anfänger-Themen 11
C Erste Schritte switch Anweisung geht nicht Java Basics - Anfänger-Themen 3
R Switch Abfrage: Found boolean but expected int? Java Basics - Anfänger-Themen 7
T Umschreiben von switch in if else und umgekehrt Java Basics - Anfänger-Themen 9
K Input/Output switch case - Parameterübergabe args[0] Java Basics - Anfänger-Themen 34
P Compilerfehler bei switch-case Java Basics - Anfänger-Themen 18
R 3 Datumsangaben sortieren mittels Switch Java Basics - Anfänger-Themen 9
J Switch mit if anweisung kombinieren Java Basics - Anfänger-Themen 2
D Kann man eine for-Schleife mit switch kombinieren? Java Basics - Anfänger-Themen 8
D Switch und Case Java Basics - Anfänger-Themen 3
F Ps to kW Konvertierer switch-case Problem Java Basics - Anfänger-Themen 4
F Datentypen Ganz simpler Taschenrechner mit switch Java Basics - Anfänger-Themen 10
M '-1' in switch anweisung Java Basics - Anfänger-Themen 2
T Parser mit switch "Weg" ausgeben? Java Basics - Anfänger-Themen 5
Q switch case hier möglich Java Basics - Anfänger-Themen 10
A Switch-Case Problem Java Basics - Anfänger-Themen 17
A Do While mit Switch Case Java Basics - Anfänger-Themen 2
Luk10 switch - Problem Java Basics - Anfänger-Themen 9
S char im switch Java Basics - Anfänger-Themen 16
berti99 Switch-Case || Problem... Java Basics - Anfänger-Themen 6
R Switch-Case Selektion Java Basics - Anfänger-Themen 13
O Switch-Case - Case 4 erhöhen Java Basics - Anfänger-Themen 9
P Problem mit switch-Funktion Java Basics - Anfänger-Themen 5
K Ich verstehe switch einfach nicht Java Basics - Anfänger-Themen 4
M Frage zu Mehrfachauswahl mit switch ... case Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben