Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
ich würde gerne für die weitere verarbeitung einen String der vom Benutzer Zahlen in der Form "1#2#3#4" erhalten hat in die ints z1, z2, z3, z4 umwandeln.
Also z1 sollte nach der umwandlung 1 entwalten, z2=2 usw..
Entsprechend wenn die Eingabe 2#4#5#3 ist soll z1=2 sein. z2=4...
Ist das mit Java möglich? Brauche ich vielleicht ein Extra Paket dafür?
Ich weiß nicht direkt wonach ich da im Forum suchen soll.
String[] result = yourInputString.split("[#]");
int[] ints = new int[result.length];
for(int i = 0; i < ints.length; i++) {
ints[i] = Integer.parseInt(results[i]);
}
Bei dem Regex-Pattern in Split weiß ich nicht genau, obs der beste Weg ist, weil RegEx kann ich nur minimal, funktioniert aber^^
Danach hast du dann ein Array voll mit diesen Zahlen, wobei die erste Zahl natürlich in ints[0] zu finden ist.
Zunächst ein mal könnte man den String zerlegen. String.split(String) liefert ein String Array im den Zahlen als Inhalt. Man muss dann nur noch ein int-Array gleicher Größe erstellen und die einzelnen "Stringzahlen" in einer Schleife in echte Zahlen parsen.Integer.parseInt(String)
wenn du sehen willst was so geschieht einfach den boolean oben auf true setzen ...
Die Lösung ist nur für Programmieranfänger gut - die Anderen Lösungen sind viel eleganter, aber auch schwieriger zu verstehen.
Java:
import java.util.ArrayList;
public class Test {
private static boolean debug = false;
private static void log(String str) {
if (debug) System.out.println(str);
}
public static void main(String[] args) {
String str = "2#4#5#3";
ArrayList<Integer> al = new ArrayList<Integer>();
int i = 0;
while (i<str.length()) {
int index = str.indexOf("#", i);
if (index == -1) {
String teil = str.substring(i); // Rest des Strings holen
i = str.length(); // Abbruch forcieren
log(teil);
al.add(Integer.parseInt(teil));
log("ende");
} else {
log("i = " + i + ", index = " + index);
String teil = str.substring(i, Math.min(index, str.length()-1));
al.add(Integer.parseInt(teil));
log("index of # = " + index);
log(teil);
i = index + 1;
}
}
System.out.println("Folgende Werte wurden gefunden");
for (Integer value : al) {
System.out.println(value);
}
}
}
@Andi_CH: Wenn ich den Text von dir mit BlueJ Übersetzen will kommt: "cannot find symbol - class ArrayList". Deswegen kann ich leider nicht Testen was dein Programm genau Ausgibt.
@Andi_CH: Wenn ich den Text von dir mit BlueJ Übersetzen will kommt: "cannot find symbol - class ArrayList". Deswegen kann ich leider nicht Testen was dein Programm genau Ausgibt.