How to get Liste von Integer aus String
mein string enthält Integer
durch ein Leerzeichen getrennt:
String number = "1 2 3 4 5 "
Wie kann ich Liste von Integer
aus diesem string ?
Haben Suche nach java-examples.com/java-string-split-example
InformationsquelleAutor hudi | 2012-06-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie eine
Scanner
zum Lesen der string eine ganze Zahl zu einem Zeitpunkt.hasNextInt()
undnextInt()
🙂Ich war immer zu. 🙂
Nur eine Frage, ist diese Methode schneller oder langsamer als die Methode erwähnen, die in anderen Antworten ?
Alle diese Beispiele laufen in O(n) Zeit. Also die Antwort ist, dass es keinen wirklichen performance-Unterschied. Edit: Tatsächlich, die Aufteilung der Streicher den ersten wie (Vorschlag in einem anderen Beitrag), und dann hinzufügen zu einer Sammlung enthält 2 x O(n) - Schleifen. Wäre diese Lösung besser
Gut, man könnte
scanner.useDelimiter("\\D");
würde sagen die scanner zu prüfen, alles andere als eine Ziffer als Trennzeichen. Es wäre dann die Behandlung der "a", "b" und "c" in deinem Beispiel-string das gleiche wie Leerzeichen, und Sie konnte immer nochhasNextInt()
undnextInt()
wie in meiner Antwort.InformationsquelleAutor Ted Hopp
Und dann fügen Sie es Ihrer Liste mit
Integer.parseInt(s[index]);
InformationsquelleAutor Kazekage Gaara
InformationsquelleAutor Gene
In Java 8 können Sie Bäche und erhalten die Umwandlung in eine kompaktere Art und Weise:
InformationsquelleAutor araknoid
teilen Sie es mit Raum, erhalten Sie ein array, dann konvertieren zu-Liste.
Sie können umwandeln von string zu integer mit 'Integer.parseInt ()' - Methode
Ich mag nicht diese Methode wegen, wenn in diesem string nicht, dann tritt Ausnahmen und ich Suche für eine etwas schnellere Methode, um zu konvertieren, das nicht eins nach dem anderen
InformationsquelleAutor Chandra Sekhar
Erstens,mit
split()
Methode, um den String in String-array.Zweitens,mit
getInteger()
Methode zum konvertieren von String zu Integer.InformationsquelleAutor plucury
InformationsquelleAutor chaitu
Einfache Lösung, die nur mit arrays:
Dass so ziemlich deckt. Wenn Sie wollte zum Ausgang, um die Konsole zum Beispiel:
Okay, einfache Modifikation: Erste for-Schleife: Sub out int num_int für nums_iArr = Integer.parseInt(num_arr[i]) Fällt eine Zeile code. Ist das ausreichend, oder würden Sie vorschlagen, etwas mehr?
InformationsquelleAutor Healsgood
Ich vorstellen möchte tokenizer-Klasse aufteilen, die durch ein beliebiges Trennzeichen. Input-string ist ein einziges mal gescannt und wir haben eine Liste ohne extra-Schleifen.
InformationsquelleAutor Whome
Können Sie es teilen, und danach Durchlaufen Sie die Umwandlung in Zahl wie:
InformationsquelleAutor Francisco Spaeth
Euch ersten split den string mit regex und dann das array Durchlaufen konvertieren jeden Wert in den gewünschten Typ.
InformationsquelleAutor JMelnik
Brauchte ich eine weitere Allgemeine Methode für das abrufen der Liste von Integer-zahlen aus einem string, so schrieb ich meine eigene Methode.
Ich bin mir nicht sicher, ob es besser als alle oben genannten, weil ich noch nicht geprüft.
Hier ist es:
Die @ - Taste parameter ist nicht obligatorisch. Es kann entfernt werden, wenn Sie löschen Sie die erste Zeile der Methode:
oder Sie können einfach ziehen Sie Sie mit "".
InformationsquelleAutor Istvan Kis
Mit Java8 Stream-API anzeigen und mapToInt-Funktion Sie können dieses Archiv ganz einfach.
oder
InformationsquelleAutor Sunimal S.K Malkakulage