Hey,
ich habe (mal wiede) ein Problem, was ich mir nicht erklären kann.
Ich habe meiner ArrayList splittedReturn zwei Strings hinzugefügt, sie hat aber nur einen String, den ich mir ausgeben lassen kann.
Hier der betreffende Code, auf anfrage kann ich die ganze Klasse posten.
Vielleicht sollte ich mal erklären, was ich mit dem Code überhaupt bewirken will.
Ich Lese einen String über ein JTextField ein, dieser wird getwistet(siehe Aufgabe 2).
Wenn mitten in dem EingabeString ein Zeichen ist,das kein Buchstabe ist, wird der String an diesem Zeichen(im Code splittedAt) gesplittet. Die beiden Strings werden dann einzeln getwistet, dann zusammen gefügt und zwischen den Strings wird das Zeichen, an dem gesplittet wurde wieder eingefügt. Dannach wird der String(Builder) returnt.
Die Ausgaben sind :"Buam, Buam"(wie zu erwarten, da die foreach Schleife zweimal durchlaufen wurde.),"Buam"(hier auch noch okay, das war der erste Wert aus der ArrayList.),"Buam:"(nicht okay, hier müsste noch immer "Baum" ausgegeben werden)
"Buam"(auch nich in Ordnung, hier müsste "Buam:Buam" ausgegeben werden.
Warscheinlich ist die Lösung wieder ziemlich einfach und ich habe eine Kleinigkeit(wie immer) vergessen.
Danke an jeden, der hier eine lösung postet,
BinAmJavaLernen
ich habe (mal wiede) ein Problem, was ich mir nicht erklären kann.
Ich habe meiner ArrayList splittedReturn zwei Strings hinzugefügt, sie hat aber nur einen String, den ich mir ausgeben lassen kann.
Hier der betreffende Code, auf anfrage kann ich die ganze Klasse posten.
Java:
if(split)
{
ArrayList <String> splittedReturn = null;
for(String str : splitted)
{
splittedReturn = new ArrayList<String>();
System.out.println(Twisten(str));
splittedReturn.add(Twisten(str));
}
Iterator <String> it= splittedReturn.iterator();
StringBuilder sb = new StringBuilder();
while(it.hasNext())
{
String next = it.next();
System.out.println(next);
String sbString ="";
sbString +="" + next + Character.toString(splittedAt);
sb.append(next + Character.toString(splittedAt));
System.out.println(sbString);
}
sb.deleteCharAt(sb.length() -1);
System.out.println(sb.toString());
return sb.toString();
}
Ich Lese einen String über ein JTextField ein, dieser wird getwistet(siehe Aufgabe 2).
Wenn mitten in dem EingabeString ein Zeichen ist,das kein Buchstabe ist, wird der String an diesem Zeichen(im Code splittedAt) gesplittet. Die beiden Strings werden dann einzeln getwistet, dann zusammen gefügt und zwischen den Strings wird das Zeichen, an dem gesplittet wurde wieder eingefügt. Dannach wird der String(Builder) returnt.
Die Ausgaben sind :"Buam, Buam"(wie zu erwarten, da die foreach Schleife zweimal durchlaufen wurde.),"Buam"(hier auch noch okay, das war der erste Wert aus der ArrayList.),"Buam:"(nicht okay, hier müsste noch immer "Baum" ausgegeben werden)
"Buam"(auch nich in Ordnung, hier müsste "Buam:Buam" ausgegeben werden.
Warscheinlich ist die Lösung wieder ziemlich einfach und ich habe eine Kleinigkeit(wie immer) vergessen.
Danke an jeden, der hier eine lösung postet,
BinAmJavaLernen