float Zahl aus String auslesen

  • Hi, hab mal ne Frage und zwar habe ich eine Schleife die mir jedes mal einen String übergibt der so zum Beispiel aussieht:
    344.60 Km \\ i=1
    32.88 Km \\ i=2
    4.56 Km \\ i=3
    1405. 42 Km \\ i =4


    Ich möchte jetzt aus dem String die Float Zahl extrahieren und als float abspeichern.
    Bekomme das irgendwie nicht hin und über google suche werde ich auch nicht wirklich schlüssig.

  • Hi Adex,


    1. Einheit abtrennen


    Java
    String s = "344.50 km";
    StringTokenizer tokenizer = new StringTokenizer( s ," ");
    
    
    System.out.println( tokenizer.nextToken() );
    //Ausgabe: 344.50
    System.out.println(tokenizer.nextToken());
    //Ausgabe: km


    Für das Verständnis:
    Java ist auch eine Insel - Strings trennen


    2. Umwandeln der Zeichenkette in einen Floatwert:



    Java
    float f = Float.parseFloat("344.60");


    Mfg Titus


    P.s Ich habs nicht getestet aber es müsste eigentlich gehen falls nicht einfach noch mal melden

  • Hallo,


    eine weiter Möglichkeit dein "Wunsch-String" zu casten wäre diese:


    Code
    String s="334,33"
    float f= Float.valueOf(s);


    PS: Keine Ahnung welche Methode effizienter ist grad ;)


    lg joensen

  • @ joensen das würde funktionieren, wenn im String nur zahlen wären.

    Hi, also habs grad mal ausprobiert und folgendes übersetzt:


    Code
    String s= "334.34";
        float f = Float.valueOf(s);
      		System.out.println(s);


    Und das funktioniert. Oder meintest du wenn das "km" noch dahinter stehen würde?

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!