String in Char umwandeln

Status
Nicht offen für weitere Antworten.

Skilllord

Mitglied
Hi,

Ich will für einen kleinen Taschenrechner den Operator abfragen und dann mit Case-Fällen die einzelnen Operationen berechnen lassen.

Deswegen muss ich den eingegeben String in einen Char umwandeln. Allerdings weiß ich nicht so recht wie das geht, auch Google hat mir nicht weitergeholfen. Ein Char Array brauche ich ja auch nicht, da der Operator nur aus einem Zeichen besteht.

Gibt es da nicht sowas wie int z1 = Integer.parseInt(br.readLine()); , nur eben mit String ---> Char?
 

Skilllord

Mitglied
Ja wie gesagt, ich wusste halt nicht welche Methode ich dafür benutzen kann ;)

Mhm irgendwie klappt das noch nicht so richtig:

Code:
package javaapplication1;
import java.io.*;


public class Main {


    public static void main(String[] args) throws IOException {

       int z1, z2, erg = 0;
       String s;
       BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
       
        System.out.println("Gib eine Zahl ein: ");
        z1 = Integer.parseInt(br.readLine());
        
        System.out.println("Gib einen Operator ein: ");
        s = br.readLine();
        s.charAt(0);
        
        System.out.println("Gib die zweite Zahl ein: ");
        z2 = Integer.parseInt(br.readLine());
        
        switch(s) {
            
            case '+': erg = z1 + z2;
                break;
            case '-': erg = z1 - z2;
                break;
            case '*': erg = z1 * z2;
                break;
            case '/': erg = z1 / z2;
                break;
            default: System.out.println("Ungültige Eingabe");
            
        }   
    }

}

Bei Switch wird ein Fehler angezeigt.
 

0x7F800000

Top Contributor
s ist ein String, insbesondere ein Objekt und kein Enum, es kann nicht bei switch verwendet werden.

Der Befehl
Code:
s.charAt(0);
ist völlig sinnfrei, weil der eben rausgehölte Buchstabe gleich weggeworfen wird.
 

Skilllord

Mitglied
Welche Möglichkeit gibt es denn, einen String mit einem Symbol(z.B. + oder -) in einen Char umzuwandeln, damit ich diesen in Case benutzen kann?
 
Zuletzt bearbeitet:

Skilllord

Mitglied
Ich habe das ganze einfach mit einem Integer gelöst, wenn ich aber z.B. 1 eingebe und den Case '1' abfrage, sagt das Programm trotzdem "Falsche Eingabe", also default.

Bitte beachtet die while Schleifen gar nicht, das ist Mist
Code:
package klasse;
import java.io.*;



public class Kartenautomat {

    public static void main(String[] args) throws IOException {

        double tag = 3.99;
        double woche = 22.50;
        double monat = 70.00;
        double jahr = 199.00;
        double ticket = 0, preis_eingabe, rueckgabe;
        char c;
        int ticket_eingabe;


        String s, w;

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        System.out.println("Die Ticketpreise sind: ");
        System.out.println("Tagesticket: " + tag);
        System.out.println("Wochenticket: " + woche);
        System.out.println("Monatsticket: " + monat);
        System.out.println("Jahresticket: " + jahr);

        System.out.println("Wählen sie ein Tagesticket(1), ein Wochenticket(2), ein Monatsticket(3) oder ein Jahresticket(4)");
        ticket_eingabe = Integer.parseInt(br.readLine());
        System.out.println(ticket_eingabe);

        switch(ticket_eingabe) {

            case'1': ticket = tag;
                break;
            case'2': ticket = woche;
                break;
            case'3': ticket = monat;
                break;
            case'4': ticket = jahr;
                break;
            default: System.out.println("Ungültige Eingabe");
                break;
        }

        System.out.println("Werfen sie das Geld ein: ");
        preis_eingabe = Double.parseDouble(br.readLine());

        rueckgabe = preis_eingabe - ticket;

        System.out.println("Die Rückgabe: ");

        while(rueckgabe >= 100)
        {
            System.out.println("100€");
            rueckgabe = rueckgabe - 100;
        }

        while (rueckgabe >= 50)
        {
            System.out.println("50€");
            rueckgabe = rueckgabe - 50;
        }

        while (rueckgabe >= 20)
        {
            System.out.println("20€");
            rueckgabe = rueckgabe - 20;
        }

        while (rueckgabe >= 10)
        {
            System.out.println("10€");
            rueckgabe = rueckgabe - 10;
        }

        while (rueckgabe >= 5)
        {
            System.out.println("5€");
            rueckgabe = rueckgabe - 5;
        }

        while (rueckgabe >= 2)
        {
            System.out.println("2€");
            rueckgabe = rueckgabe - 2;
        }

        while (rueckgabe >= 1)
        {
            System.out.println("1€");
            rueckgabe = rueckgabe - 1;
        }

        while (rueckgabe >= 0.50)
        {
            System.out.println("0.50€");
            rueckgabe = rueckgabe - 0.50;
        }

        while (rueckgabe >= 0.20)
        {
            System.out.println("0.20€");
            rueckgabe = rueckgabe - 0.20;
        }

        while (rueckgabe >= 0.10)
        {
            System.out.println("0.10€");
            rueckgabe = rueckgabe - 0.10;
        }

        while (rueckgabe >= 0.05)
        {
            System.out.println("0.05€");
            rueckgabe = rueckgabe - 0.05;
        }

        while (rueckgabe >= 0.02)
        {
            System.out.println("0.02€");
            rueckgabe = rueckgabe - 0.02;
        }

        while (rueckgabe >= 0.00)
        {
            System.out.println("0.01€");
            rueckgabe = rueckgabe - 0.01;
        }
    }
}
(da fehlt dann noch eine Schleife, mit der ich das richtige Wechselgeld ausgebe)

Achja nochwas: Wie kann ich eigentlich nach dem default das ganze Programm beenden?
 
S

SlaterB

Gast
case'1':
ist was anderes als
case 1:

'1' ist der int-Wert 50 oder so, siehe ASCII-Tabelle

---------

System.exit(0);
aber nicht gerade schön

return;
in der main-Methode dürfte auch für Ende sorgen
 

0x7F800000

Top Contributor
inwiefern falsch?
Programme sind nie falsch. Manchmal tuen sie aber seltsame Dinge, die ihnen seltsame Programmierer befehlen...
Was soll denn dieses
Code:
case '1': ...
case '2': ...
Erwartest du da an irgendeiner stelle Eingaben wie 49='1' oder 50='2' oder 51='3' usw?
Wäre es für den armen benutzer nicht vielleicht doch etwas intuitiver, wenn du die Fälle
Code:
case 1: ...
case 2: ...
behandelst?


Das mit den schleifen ist echt ziemlich gruselig, da muss ich dir zustimmen^^
[HIGHLIGHT="Java"]
public class _ {
public static void optimaleGeldstuecke(float rueckgeld){
float[] geldstuecke={1000,500,200,100,50,20,10,5,2,1,0.5f,0.2f,0.1f,0.05f,0.02f,0.01f};
int anzahl;
for(float g:geldstuecke){
anzahl=(int)(rueckgeld/g);
rueckgeld-=g*anzahl;
for(int i=0; i<anzahl; i++)System.out.println(g<1?((int)(g*100)+" ct"):((int)g+"€"));
}
}

public static void main(String..._){
optimaleGeldstuecke(3421.78f);
}
}
[/HIGHLIGHT]
Das nur mal so als Hinweis zum Thema DRY="don't (****ing) repeat yourself"^^
 

Skilllord

Mitglied
Jo die Cases laufen schonmal und meine Schreibweise mit den ganzen Schleifen klappt mittlerweile auch :D

Aber ich werde deine Version nehmen - vorher muss ich sie aber erstmal durchblicken ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
W String auf char[] umwandeln Java Basics - Anfänger-Themen 3
D Erste Schritte String Array in char Array umwandeln? Java Basics - Anfänger-Themen 1
V Zahleneingabe als String in Char umwandeln Java Basics - Anfänger-Themen 4
K String in Char umwandeln ??? Java Basics - Anfänger-Themen 2
A Datentyp String in char umwandeln Java Basics - Anfänger-Themen 3
M Char Array mit Sonderzeichen in String umwandeln Java Basics - Anfänger-Themen 21
0 String in Char umwandeln ? Java Basics - Anfänger-Themen 3
G Char in String umwandeln Java Basics - Anfänger-Themen 14
S String in char umwandeln Java Basics - Anfänger-Themen 7
S char in String umwandeln? Java Basics - Anfänger-Themen 11
D 2D Char Array into String Java Basics - Anfänger-Themen 2
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
D String und char in String speichern Java Basics - Anfänger-Themen 5
R String in char-Array übertragen Java Basics - Anfänger-Themen 5
I char Array to String Java Basics - Anfänger-Themen 3
C Methoden String in char Array Java Basics - Anfänger-Themen 3
C char in String suchen und durch anderen String ersetzen Java Basics - Anfänger-Themen 2
T Object zu Char zu String Java Basics - Anfänger-Themen 6
C String-zaehleZeichen(String str,char[]c) Java Basics - Anfänger-Themen 9
D Best Practice String aufbau - Char Array oder Anhängen Java Basics - Anfänger-Themen 11
P Char aus einem String auswählen Java Basics - Anfänger-Themen 4
E Input/Output convert string to two dimensional char and output = matrix Java Basics - Anfänger-Themen 2
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
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
M String( char[] value ) Java Basics - Anfänger-Themen 3
U Fragen zu String und Char Java Basics - Anfänger-Themen 10
S expected java.lang.string but found char Java Basics - Anfänger-Themen 5
B Char in String ersetzen Java Basics - Anfänger-Themen 15
N Methode die String in char-Array wandelt!! Java Basics - Anfänger-Themen 11
E Char-Array zu String Java Basics - Anfänger-Themen 2
M Datentypen Char Array in String Array gibt Probleme Java Basics - Anfänger-Themen 10
C String ab einem bestimmten Char abschneiden??? Java Basics - Anfänger-Themen 7
H String zerlegen in einzelne Buchstaben (char)?? Java Basics - Anfänger-Themen 7
B Datentypen char, int, float in String Variable speichern Java Basics - Anfänger-Themen 4
I char arrays zu string Java Basics - Anfänger-Themen 7
L String zuverlässig nach Char parsen? Java Basics - Anfänger-Themen 4
B Unterschied zwischen String & char Array? Java Basics - Anfänger-Themen 5
Luk10 String in ein char[] schreiben Java Basics - Anfänger-Themen 5
H string/char to keycode Java Basics - Anfänger-Themen 7
B Datentypen Char Array in einen String verwandeln? Java Basics - Anfänger-Themen 2
W Char in String parsen Java Basics - Anfänger-Themen 6
K String von z.B. "\u003C" in Char konvertieren Java Basics - Anfänger-Themen 7
N string in char und char in int Java Basics - Anfänger-Themen 6
hdi char[] to String Java Basics - Anfänger-Themen 4
J String in char Array Java Basics - Anfänger-Themen 2
G länge von string, string aus integer/char Java Basics - Anfänger-Themen 6
N String/char-array aus datei auslesen Java Basics - Anfänger-Themen 2
A String to Char Umwandlung. Java Basics - Anfänger-Themen 7
J Lesen einer Datei in einen String oder Char? Java Basics - Anfänger-Themen 3
T String als Array und Umwandlung in Char Java Basics - Anfänger-Themen 7
X char to String Java Basics - Anfänger-Themen 3
G String[] in char? Java Basics - Anfänger-Themen 3
S String / charAt + Fehlermeldung: char cannot be dereferenced Java Basics - Anfänger-Themen 16
L char in String Java Basics - Anfänger-Themen 10
G Frage zu Umwandlung char[] in string[] bzw. Schleifen Java Basics - Anfänger-Themen 9
H char Array in String Java Basics - Anfänger-Themen 7
S String in char-Array einfügen Java Basics - Anfänger-Themen 8
G String: nach 3. Zeichen char ersetzen Java Basics - Anfänger-Themen 3
C KeyCode (Char(22)) in einem String Java Basics - Anfänger-Themen 7
G zwei Zahlen bei String.valueOf(char c) in JTextField Java Basics - Anfänger-Themen 7
B Char in String ? Java Basics - Anfänger-Themen 2
krgewb String mit Datumsangabe in Long umwandeln Java Basics - Anfänger-Themen 2
D String Groß/Kleinschreibung Ignorieren Java Basics - Anfänger-Themen 4
D Map<String, Integer> sortieren und der reinfolge nach die Glieder abfragen Java Basics - Anfänger-Themen 3
J Ähnlichen String in Liste finden Java Basics - Anfänger-Themen 6
Kartoffel_1 String transformation Java Basics - Anfänger-Themen 7
H String-Operation replace() - Zeichenkette verdoppeln Java Basics - Anfänger-Themen 2
K String analysieren Java Basics - Anfänger-Themen 27
Beowend String zu Date parsen Java Basics - Anfänger-Themen 1
Beowend String auf Satzzeichen überprüfen? Java Basics - Anfänger-Themen 6
H Liste nach String-Länge sortieren Java Basics - Anfänger-Themen 1
String in ArrayList umwandeln Java Basics - Anfänger-Themen 1
I Sass Compiler und String erhalten? Java Basics - Anfänger-Themen 7
Avalon String in Double bzw. Währung konvertieren Java Basics - Anfänger-Themen 6
T Methode akzeptiert String nicht Java Basics - Anfänger-Themen 18
F Arraylist<String>Ein Wort pro Zeile Java Basics - Anfänger-Themen 6
J Schlüsselworte Prüfen, ob ein bestimmtes, ganzes Wort in einem String enthalten ist. Java Basics - Anfänger-Themen 6
N String überprüfen Java Basics - Anfänger-Themen 3
E String zerlegen aus args Java Basics - Anfänger-Themen 1
M Long-Typ in String-Änderung führt zu keinem Ergebnis bei großer Zahl Java Basics - Anfänger-Themen 11
Ostkreuz String Exception Java Basics - Anfänger-Themen 8
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
J String Filter Java Basics - Anfänger-Themen 5
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Größter zusammenhängender Block gleicher Zeichen im String Java Basics - Anfänger-Themen 1
XWing Randomizer mit einem String Java Basics - Anfänger-Themen 2
H Cast von Float nach String klappt nicht Java Basics - Anfänger-Themen 12
I Zerlegen von String Java Basics - Anfänger-Themen 3
B Beliebiger String gegeben Suche Datum in String Java Basics - Anfänger-Themen 6
I String Java Basics - Anfänger-Themen 4
I API - zurückgegebener JSON String lesen und in Entity konvertieren Java Basics - Anfänger-Themen 2
H Zu langen String aufteilen - bequeme Methode? Java Basics - Anfänger-Themen 14
W String einer Textdatei in einzelne Stringobjekte pro Zeile aufteilen Java Basics - Anfänger-Themen 14
belana wie am besten 2D Array von String to Integer Java Basics - Anfänger-Themen 18
J Java To String Methode, Array mit For-Schleife Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben