Datentypen Eigenen Datentyp toArray()

madomat

Mitglied
Hallo Leute,

ich hab noch ein Problem.
Ich hab mir eine eigene Dictionary-Klasse geschrieben, welche auch toArray() implementieren soll:
Java:
	@SuppressWarnings("unchecked")
	@Override
	public T[] toArray() {
		// den kram in ein array umwandeln
		ListItem active = firstitem;
		Object returnarray[] = new Object[size()];
		int counter = 0;
		while(active.nextitem != null) //bis zum letzten Element wandern
		{
			active = active.nextitem; //zeiger immer aktualisieren
			returnarray[counter] = active.element;
			counter++;
		}
		return (T[]) returnarray;
	}
Ruf ich das von der Testclass dann auf:
Java:
mydictionary<String> testlist = new mydictionary<String>();
		testlist.insert("erstens");
		testlist.insert("zweitens");
System.out.println(testlist.toArray()[1]);
Bekomme ich:
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;
at tester.main(tester.java:14)
Was mache ich hier falsch?
Vielen Dank für eure Superhilfe ;):toll:
 
G

Gast2

Gast
In Zeile 6 legst du das Array ja als Object[] an und castest es am Ende einfach nach T[], du musst schon intern auch mit den generischen Typen arbeiten

Btw - wo ich es eben woanders geschrieben hatte: Klassennamen im CamelCase, z.B.:

Java:
class MyDictionary
 
Zuletzt bearbeitet von einem Moderator:
G

gman

Gast
Hi,

die richtige Signatur der Methode müsste doch:

Java:
<T> T[] toArray(T[] a)

sein, oder nicht? Dann müsste der Vorschlag von fassy auch
funktionieren, da der generische Typ "T" dann auch bekannt ist.

Java:
    @SuppressWarnings("unchecked")
    @Override
    public T[] toArray(T[] a) {
        // den kram in ein array umwandeln
        ListItem active = firstitem;
        a = new T[size()];
        int counter = 0;
        while(active.nextitem != null) //bis zum letzten Element wandern
        {
            active = active.nextitem; //zeiger immer aktualisieren
            a[counter] = active.element;
            counter++;
        }
        return a;
    }

(ungetesteter Code)
 
G

gman

Gast
Hi,

ich hab mich wohl irgendwie versehen, du willst ja die andere Methode implementieren, sorry.
Und der Vorschlag:

Java:
a = new T[size()];

ist auch Mist, haste ja auch schon gemerkt ;) Aber hier noch ein paar Tips die dir vielleicht
weiterhelfen können:

- Guck dir mal die Klassne "java.util.Arrays" und "java.lang.System" (vor allem "arraycopy") an
- in diesem Thread geht es wohl um eine ähnliche Aufgabe
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Datentypen Operatoren für eigenen Datentyp nutzen Java Basics - Anfänger-Themen 2
C Eigenen Datentyp schreiben Java Basics - Anfänger-Themen 13
I Liste von Infos von einer eigenen Annotation in Liste speichern Java Basics - Anfänger-Themen 0
L Math.exp also eigenen Algorithmus Java Basics - Anfänger-Themen 2
B Email Client in der eigenen Software einbauen Java Basics - Anfänger-Themen 3
M Ist es möglich den Login in eine Drittseite für den eigenen zu benutzen? Java Basics - Anfänger-Themen 1
C Tabs in JTabbedPane wechseln, wenn Tabs in eigenen Klassen sind Java Basics - Anfänger-Themen 2
K Hashtable mit eigenen Konstruktor Java Basics - Anfänger-Themen 2
K JUnit: Objekte von eigenen Klassen vergleichen...geht nicht Java Basics - Anfänger-Themen 5
A mehrere Panels in eigenen Klasssen in einem Frame Java Basics - Anfänger-Themen 16
S Methoden eine Instanz einer eigenen Klasse als parameter übergeben Java Basics - Anfänger-Themen 9
Thallius Best Practice Events zwischen eigenen Klassen Java Basics - Anfänger-Themen 2
S Eigenen Listener zu eigenen Button! Java Basics - Anfänger-Themen 5
kaoZ Methoden Eigenen Sortier Methode erstellen Java Basics - Anfänger-Themen 5
H Eigenen Listener einbauen Java Basics - Anfänger-Themen 5
O Eigenen Addon-Loader machen? Java Basics - Anfänger-Themen 33
Pentalon Eclipse JUNO keine Vorschläge von Methoden bzw. Interfaces der eigenen Klassen Java Basics - Anfänger-Themen 5
Y Collection der eigenen Klasse Java Basics - Anfänger-Themen 10
M Größer der eigenen .jar ermitteln Java Basics - Anfänger-Themen 4
S JTabbedPane jeder Tab in einer eigenen java Datei? Java Basics - Anfänger-Themen 3
P Klassen Instanz einer Klasse in ihrer eigenen Definition erzeugen? möglich? Java Basics - Anfänger-Themen 4
L eigenen Baum schreiben Java Basics - Anfänger-Themen 5
E incompatible types bei eigenen Klassen Java Basics - Anfänger-Themen 7
A Array einer eigenen Klasse sortieren Java Basics - Anfänger-Themen 11
N Eigenen Codesinn vergessen Java Basics - Anfänger-Themen 6
xehpuk In JUnit über eigenen Thread testen Java Basics - Anfänger-Themen 3
D Pfad zu "Eigenen Dateien" ermitteln Java Basics - Anfänger-Themen 8
M Verständnis-Probleme mit eigenen Klassen Java Basics - Anfänger-Themen 2
A Null Pointer Exception beim Erstellen eines Arrays aus einer eigenen Klasse Java Basics - Anfänger-Themen 3
F Klasse bzw Objekt in eigenen Thread auslagern Java Basics - Anfänger-Themen 3
C0FFEE Anwendung soll eigenen Dateinamen referenzieren Java Basics - Anfänger-Themen 13
Benji0815 Eigenen Listener schreiben Java Basics - Anfänger-Themen 13
Spin Eigenen Abstrakten Datentypen Java Basics - Anfänger-Themen 28
R eigenen Event schreiben Java Basics - Anfänger-Themen 16
S Vector von eigenen Klassen Java Basics - Anfänger-Themen 2
A Mehrere Instanzen einer eigenen Klasse in einem Array Java Basics - Anfänger-Themen 5
D JWS - Resourcen aus eigenen Jar laden? Java Basics - Anfänger-Themen 3
S Java Applet - Verbindung zum Eigenen Server Java Basics - Anfänger-Themen 2
E ArrayList mit eigenen typ serialisieren? Java Basics - Anfänger-Themen 1
Povlsen84 HashSet mit eigenen Datentypen Java Basics - Anfänger-Themen 6
G Protected Variablen außerhalb der eigenen Klassenhierarchie sichtbar Java Basics - Anfänger-Themen 5
S Addition von eigenen Objekten mit "+" Symbol Java Basics - Anfänger-Themen 19
M Einfügen eines eigenen Component Java Basics - Anfänger-Themen 21
A Im Chat eigenen Beitrag in Farbe zeigen Java Basics - Anfänger-Themen 8
G Eigenen Code mit einer Lizenz schützen Java Basics - Anfänger-Themen 2
G Vector eigenen Typs mit Daten füllen Java Basics - Anfänger-Themen 20
J Verwendung von eigenen Klassen in JSP Java Basics - Anfänger-Themen 2
B Ergenzungen und oder Updates von eigenen Anwendungen Java Basics - Anfänger-Themen 4
R Einfügen einer eigenen methode in ein Panel Java Basics - Anfänger-Themen 5
spacegaier Problem beim Laden eines Vektors mit eigenen Objekten Java Basics - Anfänger-Themen 4
F ArrayList eines eigenen Datentyps Java Basics - Anfänger-Themen 3
F Array einer eigenen Klasse erstellen. Java Basics - Anfänger-Themen 8
° Zugriff auf ein Objekt der eigenen Klasse Java Basics - Anfänger-Themen 2
F Array einer eigenen Klasse Java Basics - Anfänger-Themen 5
G JTable mit eigenen Model neu zeichnen Java Basics - Anfänger-Themen 4
E Eigenen datentypen erstellen Java Basics - Anfänger-Themen 14
C Wie muss man hier aufrufen von 2 eigenen Klassen? Java Basics - Anfänger-Themen 6
D Mehrere JFrames in eigenen Klassen und Dateien? Java Basics - Anfänger-Themen 4
G eigenen Quelltext ausgeben Java Basics - Anfänger-Themen 8
J Attribut vom Objekt einer eigenen Klasse setzen Java Basics - Anfänger-Themen 6
A problem: importieren von eigenen klassen Java Basics - Anfänger-Themen 3
K Array von einem eigenen Objekt erstellen Java Basics - Anfänger-Themen 5
Dilandau array aus eigenen objekten erstellen? Java Basics - Anfänger-Themen 7
M Email versenden, ohne eigenen pop3-server? Java Basics - Anfänger-Themen 7
M Namen der eigenen Klasse ermitteln Java Basics - Anfänger-Themen 2
H probleme mit import von eigenen packages Java Basics - Anfänger-Themen 4
F Datentypen Wertebereiche passender Datentyp Java Basics - Anfänger-Themen 5
K Warum wird mir hier nach dem ersten Durchlauf zwei mal "welchen Datentyp wollen sie übergeben?" ausgegeben ? Java Basics - Anfänger-Themen 1
MiMa Probleme mit Datentyp long ?? Java Basics - Anfänger-Themen 2
D Arraylist mit Komplexen Datentyp Java Basics - Anfänger-Themen 3
Igig1 Welche Werte sind als default Werte in einem Array, der als Datentyp eine Klasse hat? Java Basics - Anfänger-Themen 1
B Datentyp für Einzelnes Objekt oder Liste Java Basics - Anfänger-Themen 9
C initialisieren eines arrays richtiger Größe und mit geeignetem Datentyp Java Basics - Anfänger-Themen 26
H Datentyp mit 3 Zuständen Java Basics - Anfänger-Themen 42
javaluke Erste Schritte Array nach Datentyp sortieren Java Basics - Anfänger-Themen 16
Kanaska Datentyp für Zahlenbereiche Java Basics - Anfänger-Themen 7
A Datentyp char Java Basics - Anfänger-Themen 27
I Klassen als Datentyp nutzen? Java Basics - Anfänger-Themen 11
C unverständlicher Code Attribute ohne Datentyp, wie geht das? Java Basics - Anfänger-Themen 8
T Datentyp mit Anführungszeichen drinnen Java Basics - Anfänger-Themen 3
R Datentypen Datentyp String lenght & charAT Java Basics - Anfänger-Themen 4
M Array mit eigenem Datentyp probleme beim übergeben Java Basics - Anfänger-Themen 6
C Interface als Datentyp eines Attributes? Java Basics - Anfänger-Themen 6
B Datentypen Datentyp welcher den gleichen Namen wie die Klasse trägt? Java Basics - Anfänger-Themen 1
D Datentypen Welcher ist der beste Datentyp? Java Basics - Anfänger-Themen 28
F Datentypen Missverständnis Datentyp Java Basics - Anfänger-Themen 2
D Rechnen mit numerischen Datentyp Frage Java Basics - Anfänger-Themen 16
E Klassename als Datentyp??? Java Basics - Anfänger-Themen 4
F Wertebereich/Datentyp Java Basics - Anfänger-Themen 26
M Datentypen Java Datentyp Definition Java Basics - Anfänger-Themen 6
MiMa Datentyp Short Wert zuweisen über Methode Java Basics - Anfänger-Themen 2
Z Was habe ich davon mit einem Datentyp verschiedene Instanzen zu haben? Java Basics - Anfänger-Themen 6
D Klassen Gesucht: Einfache Beispiel-Klasse für einen Datentyp Java Basics - Anfänger-Themen 7
E Datentypen Benutzerdefinierten Datentyp verwenden Java Basics - Anfänger-Themen 1
ms_cikar Java Datentyp unwandlung Java Basics - Anfänger-Themen 7
G Datentypen Tipps, Ratschläge erwünscht bzgl. Datentyp bestimmen über Wertebereich Java Basics - Anfänger-Themen 5
Y Warum void statt Datentyp + return Java Basics - Anfänger-Themen 4
M Interface als Datentyp Java Basics - Anfänger-Themen 12
R Variablen Datentyp erst während Laufzeit festlegen Java Basics - Anfänger-Themen 6
1 Neuen Datentyp für rationale Zahlen als Klasse entwickeln Java Basics - Anfänger-Themen 20

Ähnliche Java Themen

Neue Themen


Oben