StringTokenizer soll in String-Array schreiben

Status
Nicht offen für weitere Antworten.

ulr!ch

Bekanntes Mitglied
Hi Java-Gemeinde,

hier ein tolle Newby-Frage :):
Was stimmt an folgendem Code-Schnipsel nicht?
Es gibt eine ArrayList namens arrayList, die am Anfang in ein String-Array (abc) geschrieben wird.
Dieses soll dann an Hand des Trennzeichens "|" mittels StringTokenizer in zwei seperate String-Arrays geschrieben werden, was allerdings leider nicht funktioniert.

Code:
String[] abc = (String[])arrayList.toArray(new String[arrayList.size()]);
  for (int u=0; u <= arrayList.size(); u++) {
    StringTokenizer il = new StringTokenizer(abc[i], "|");
    String[] abc_eine_Haelfte = (String[])il.nextElement();
    String[] abc_andere_Haelfte = (String[])il.nextElement();
    u++;
  }

Bin für jede Hilfe wirklich dankbar, weil ich schon der Verzweiflung nahe bin...
Ulrich
 

Wildcard

Top Contributor
Code:
...
String[] abc_andere_Haelfte = (String[])il.nextElement(); 
u++; 
...
Du erhöhst in der for-schleife u!
 

ulr!ch

Bekanntes Mitglied
Du erhöhst in der for-schleife u!
Sorry, das habe ich nachträglich eingefügt, und dass stehe nicht im eigentlichen Code.
Sorry, daran liegt es nicht.
Zusatz: Das Prog fliegt immer mit einer "ClassCastException" raus, was immer das auch sein mag.
 

mic_checker

Top Contributor
ulrich.schroeders hat gesagt.:
Code:
String[] abc = (String[])arrayList.toArray(new String[arrayList.size()]);
  for (int u=0; u <= arrayList.size(); u++) {

Code:
for(int u = 0;u < arrayList.size();u++) {
....
 

Wildcard

Top Contributor
Zusatz: Das Prog fliegt immer mit einer "ClassCastException" raus, was immer das auch sein mag.
Code:
    String[] abc_eine_Haelfte = (String[])il.nextElement(); 
    String[] abc_andere_Haelfte = (String[])il.nextElement();
Das ist hier. Der StringTokenizer liefert einen String, und du versuchst ihn in ein String[] zu casten.
 

mic_checker

Top Contributor
Zusätzlich zu dem was Wildcard geschrieben hat:
Sicherheitshalber solltest du auch noch mit hasMoreTokens() kontrollieren ob der StringTokenizer noch ein nächstes Token hat.
Kann nicht schaden.

Btw. warum verwendest du nicht "nextToken()" anstatt "nextElement()"?

nextElement() gibt Object zurück, nextToken() einen String.
 

mic_checker

Top Contributor
Das verhindert keine ClassCastException, aber wenn das Prog erstmal läuft müsste er eigentlich ne ArrayIndexOutOfBoundsException schmeissen bei deiner Lösung.

Schau dir die Posts von Wildcard und mir mal an...
 

ulr!ch

Bekanntes Mitglied
Btw. warum verwendest du nicht "nextToken()" anstatt "nextElement()"?
nextElement() gibt Object zurück, nextToken() einen String.
Ich kann nur Objects zurückbekommen, nextToken wird nicht akzeptiert.

By<e Ulrich
 

mic_checker

Top Contributor
Dann mach es halt mit nextElement() und caste, verstehe allerdings nicht so ganz warum er das mit nextToken() nicht akzeptiert.

API:

Object nextElement()
Returns the same value as the nextToken method, except that its declared return value is Object rather than String.
 

ulr!ch

Bekanntes Mitglied
mic_checker hat gesagt.:
Code:
String abc_eine_Haelfte = (String)il.nextElement();
Aber ich will doch gerade in ein String-Array schreiben und nicht einen einfachen String zurückbekommen.

By<e Ulrich
 

ulr!ch

Bekanntes Mitglied
Wildcard hat gesagt.:
Warum denn? Es ist doch nur 1 String, warum ein Array draus machen?
Jetzt, verstehe ich überhaupt nichts mehr? :bahnhof:
Ich habe doch eine ArrayList mit zig Elemente auf ein Array-String verteilt.
Und ich brauche für die weitere Verarbeitung unbedingt ein Array.

Mit der Bitte um Hilfe,
Ulrich
 

ulr!ch

Bekanntes Mitglied
mic_checker hat gesagt.:
Dann mach es halt mit nextElement() und caste, verstehe allerdings nicht so ganz warum er das mit nextToken() nicht akzeptiert.
Weiß ich leider auch nicht. :shock: Vielleicht müsste ich korrekt formulieren, dass JBuilder diese Option nicht vorschlägt, auch wenn sie eigentlich zulässig ist. Nach Eingabe des Punktes schlägt er aber nur ".nextElement" vor. Vielleicht hängt das mit der ArrayList zusammen.

By<e Ulrich
 

mic_checker

Top Contributor
Also, alles step by step...;)

Es geht sicher um das Problem hier - oder?:
http://www.java-forum.org/de/viewtopic.php?t=14984

Wenn ich das richtig gelesen hab gehst du momentan so vor:
Code:
arraylist.add("Hauptstadt von Frankreich | Paris");
arraylist.add("Hauptstadt von Österreich | Wien");
....

Soweit korrekt? Du willst jetzt in einem Array die "Frage" (also Hauptstadt von ... , Hauptstadt von ...) und in einem Array die "Antworten" (Paris,Wien) etc. in nem anderm?

Dann können wir immer noch weitersehen, bevor wir hier aneinander vorbeireden.
 

Sky

Top Contributor
Zum Verständnis: Du schreibst, dass deine Daten in einer ArrayList stehen: Warum stehen Sie da und wie kommem sie dort rein??? (Frage nur, weil sich dein Prob evtl. auch anders lösen läßt...)

Ansonsten könnte man es auch z.B. so lösen:
Code:
ArrayList arraylist = new ArrayList();
arraylist.add("Hauptstadt von Frankreich | Paris");
arraylist.add("Hauptstadt von Österreich | Wien"); 
String[] erste = new String[arraylist.size()];
String[] zweite = new String[arraylist.size()];

String[] temp = null;

for ( int i = 0; i < arraylist.size(); i++) {
  temp = ((String)arraylist.get(i)).split("\\|");
  erste[i] = temp[0];
  zweite[i] = temp[1];
}

Ich will gleich dazu sagen, dass es noch weitere Lösungen gibt, die mindestens genau so gut sind...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Problem mit Konsolenausgabe bei StringTokenizer Java Basics - Anfänger-Themen 2
B StringTokenizer Java Basics - Anfänger-Themen 11
L Textfile mit StringTokenizer einlesen und sortiert ausgeben Java Basics - Anfänger-Themen 8
M StringTokenizer macht Quatsch Java Basics - Anfänger-Themen 21
S StringTokenizer; countTokens() Java Basics - Anfänger-Themen 6
J StringTokenizer? Java Basics - Anfänger-Themen 2
V StringTokenizer für Rechenzeichen Java Basics - Anfänger-Themen 12
C StringTokenizer Delimiter " " "??? Java Basics - Anfänger-Themen 2
M java.lang.StringTokenizer Java Basics - Anfänger-Themen 4
X StringTokenizer immer nur ein Zeichen Java Basics - Anfänger-Themen 12
T OOP StringTokenizer, Zuweisung der einzelnen Attribute Java Basics - Anfänger-Themen 21
B Fragen zu StringTokenizer? Java Basics - Anfänger-Themen 8
M String.split() und StringTokenizer Java Basics - Anfänger-Themen 2
G StringTokenizer Java Basics - Anfänger-Themen 4
J StringTokenizer Java Basics - Anfänger-Themen 3
G Array mit Stringtokenizer füllen Java Basics - Anfänger-Themen 2
P StringTokenizer Java Basics - Anfänger-Themen 2
V StringTokenizer Java Basics - Anfänger-Themen 2
P Rexex - stringtokenizer - String funktionen allgemein Java Basics - Anfänger-Themen 3
G Java StringTokenizer Java Basics - Anfänger-Themen 2
D StringTokenizer wirft Exception Java Basics - Anfänger-Themen 9
G StringTokenizer mit unterschiedlichen Delimitern Java Basics - Anfänger-Themen 7
G StringTokenizer - jedem Zeichen einen Bezeichner zuweisen Java Basics - Anfänger-Themen 4
S schwieriger String für StringTokenizer, wie am Besten ? Java Basics - Anfänger-Themen 8
R StringTokenizer Java Basics - Anfänger-Themen 9
V StringTokenizer Java Basics - Anfänger-Themen 10
S StringTokenizer: Daten aus Datei auslesen Java Basics - Anfänger-Themen 11
S TreeSet und StringTokenizer Java Basics - Anfänger-Themen 6
C StringTokenizer Java Basics - Anfänger-Themen 3
A Problem StringTokenizer mit delimiters Java Basics - Anfänger-Themen 2
N Zeilenumbruch im StringTokenizer?? Java Basics - Anfänger-Themen 4
J StringTokenizer Hilfe !!!!!!!!!!! Java Basics - Anfänger-Themen 5
Ü Methode soll Quadrat aus der Summer zurückgeben Java Basics - Anfänger-Themen 10
DrahtEck Schleife soll wieder da anfangen wo ich es möchte ! Java Basics - Anfänger-Themen 17
T Methode soll etwas ausrechnen und zurückgeben (klappt nd) hat wer eine Idee? Java Basics - Anfänger-Themen 11
Com.Roter Wie soll ich lernen? Java Basics - Anfänger-Themen 17
T code so schreiben das er von sich selber anpasst (code soll die anzahl aller bustaben bestimmen) Java Basics - Anfänger-Themen 16
T float soll durch schleife die größte mögliche Zahl herausfinden, Ausgabe ist aber "Infinity" Java Basics - Anfänger-Themen 1
I aus 2 random zahlen soll nur die ungerade summe der beiden genommen werden. Java Basics - Anfänger-Themen 13
H Erste Schritte Nach einer Zahl n soll n Mal der String untereinander ausgegeben werden Java Basics - Anfänger-Themen 3
berserkerdq2 Warum soll ich shuffle nutzen, um bei Rückgabewert Collection eine Liste zurückzugeben? Java Basics - Anfänger-Themen 3
berserkerdq2 Wann soll ich den Stream schließen, wenn ich das in einer Methode habe? Java Basics - Anfänger-Themen 8
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
M Bei nach oben scrollen soll Seite aktualisiert werden (Userscript mit Javascript) Java Basics - Anfänger-Themen 10
R App soll selbstständig reagieren, anstatt via Models Java Basics - Anfänger-Themen 0
A Wenn eine Zahl durch 7 teilbar ist, soll statt der Zahl ein ‘*‘ angezeigt werden. java? Java Basics - Anfänger-Themen 47
C Ein Algorithmus soll schneller werden Java Basics - Anfänger-Themen 24
K Ein Objekt Auto kennt den Inhalt seines links und rechtsstehenden Autos, wie soll man das ermöglichen Java Basics - Anfänger-Themen 2
HeiTim Brauche Hilfe soll ein nummeriertes Feld ausgeben lassen Java Basics - Anfänger-Themen 17
O Ich habe einen String und soll mit matches schauen, ob ein Buchstabe zu einer geraden ANzahl im String vorkommt, wie soll das gehen? Java Basics - Anfänger-Themen 7
O Ich ahbe einen char und diesen soll ich bei .matches prüfen, also ob der char in meiner Zeichenkette vorhanden ist, wie mache ich das? Java Basics - Anfänger-Themen 9
B Java Programm soll mit Python kommunizeren Java Basics - Anfänger-Themen 1
J Kreis soll die gleiche Fläche wie das Rechteck haben wie mache ich das? Java Basics - Anfänger-Themen 3
MichelNeedhelp Brauche zu diesem Labyrinth ein Skript? Der Hamster soll im Urzeigersinn das ganze Labyrinth abgehen und wieder an seinem Ursprungsplatz sein. Java Basics - Anfänger-Themen 40
J Problem mit einer Methode die gewissen Inhalt einer Array löschen soll Java Basics - Anfänger-Themen 9
J Problem mit einer Methode, die beliebig viele Objekte in Array speichern soll Java Basics - Anfänger-Themen 6
F Java Programm, das kleine Buchstaben in einem String zählen soll und bei großen Buchstaben oder Sonderzeichen abbrechen soll. Java Basics - Anfänger-Themen 5
kazzam94 Methode soll Array von Boolean zurückgeben Java Basics - Anfänger-Themen 5
S Scanner soll Groß-/ Kleinschreibung ignorieren Java Basics - Anfänger-Themen 2
E Division von BigInteger soll Gelitkommazahl liefern Java Basics - Anfänger-Themen 46
M Unterklasse soll nicht alle Methoden erben Java Basics - Anfänger-Themen 3
E Methode soll andere Methode der selben Klasse aufrufen Java Basics - Anfänger-Themen 28
S Vergleichen ob der Integer der benutzt eingeben werden soll überhaupt ein int ist Java Basics - Anfänger-Themen 1
C Ganzzahlige Werte in Boolean ausgeben und überprüfen ob Primzahl oder nicht, wenn es keine Primzahl ist soll es die Primfaktorzerlegung ausgeben Java Basics - Anfänger-Themen 4
E Kreis soll eine Raupe darstellen Java Basics - Anfänger-Themen 37
V Erste Schritte for-Schleife; Ausgabe soll alle 5 Sekunden erfolgen. Java Basics - Anfänger-Themen 4
H Koordinateneingabe im 2D Array soll true/false zurückgeben Java Basics - Anfänger-Themen 5
D Etwas unsicher wie es weitergehen soll Java Basics - Anfänger-Themen 2
N Bewegtes Objekt soll sich um eine Parallele bewegen Java Basics - Anfänger-Themen 0
B Button soll sowohl auf Klicken als auch auf die Enter-Taste reagieren Java Basics - Anfänger-Themen 9
B Derzeit JSF - Projekt, später soll MobileApp folgen Java Basics - Anfänger-Themen 5
scratchy1 Wie deklariert man eine Methode, die ein Objekt zurückgeben soll? Java Basics - Anfänger-Themen 22
V Vererbung Subklasse soll Superklasse verändern Java Basics - Anfänger-Themen 2
T Random soll Zufallszahl beibehalten. Java Basics - Anfänger-Themen 11
C Objekt soll ein Array sein. Java Basics - Anfänger-Themen 15
N Ich weiß nicht, wie ich meinen Code richtig designen soll und komme nicht weiter Java Basics - Anfänger-Themen 4
K Zufalsszahl soll sich nicht wiederholen Java Basics - Anfänger-Themen 9
W Eigener Iterator soll mehrdimensionales Array durchlaufen Java Basics - Anfänger-Themen 4
P Methode soll Variable einer anderen Klasse ändern. Wie? Java Basics - Anfänger-Themen 1
J Kopierte Datei soll alte ersetzen. Java Basics - Anfänger-Themen 6
A Variablen Main Klasse soll auf eine andere Klasse zugreifen Java Basics - Anfänger-Themen 3
I Programm tut nicht was es soll :) Java Basics - Anfänger-Themen 5
Tommy135 Klassen jComboBox macht nicht was sie soll Java Basics - Anfänger-Themen 4
D JButton soll Farbe von JTextfield ändern Java Basics - Anfänger-Themen 5
R While-Schleife macht nicht was sie soll Java Basics - Anfänger-Themen 24
kilopack15 Methode soll int-Array zurückgeben Java Basics - Anfänger-Themen 2
S Variable in JTextField soll immer um 5 zunehmen Java Basics - Anfänger-Themen 8
S JButton soll für bestimmte Zeit verschwinden Java Basics - Anfänger-Themen 5
J-Gallus Ein Getter bekommt eine anderen Type als er Return soll Java Basics - Anfänger-Themen 9
L Bei falscher Eingabe soll NaN zurückgegeben werden, Rückgabetyp jedoch double Java Basics - Anfänger-Themen 3
W drawLine(...) - Linie soll nur begrenzt lang sein Java Basics - Anfänger-Themen 9
I Fenster A soll Fenster B schliessen Java Basics - Anfänger-Themen 5
A Variablen Variable soll ihren Wert nach Initialisierung nicht mehr ändern Java Basics - Anfänger-Themen 2
TheMenox Methoden Bestimmung an welche Methode eine andere Methode ihren Wert weitergeben soll Java Basics - Anfänger-Themen 35
M Exception soll Werte mitgeliefert bekommen Java Basics - Anfänger-Themen 12
K Objekt soll Anwendung über Änderungen informieren Java Basics - Anfänger-Themen 8
X Einfache Frage; wie soll ich die spezielle float var speichern? Java Basics - Anfänger-Themen 2
C Ein Button soll Focus rausfinden und Methode starten Java Basics - Anfänger-Themen 9
M Panel erstellen, welches ein Control erhält. Ausgabe soll über einen Stream erfolgen. Java Basics - Anfänger-Themen 0
K Variablenname soll der Inhalt vom String sein Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben