Listentyp

-Tom-Tom-

Grünschnabel
Hi,

ich habe folgendes Problem ich hab zwei Listen, die eine beinhaltet Strings die andere Objekte.
Code:
List<String> listA = new ArrayList<String>();
List<Object> listB = new ArrayList<Object>();

Nun wollte ich ne Prüfung machen die mir ne Unterscheidung zwischen ListA und ListB gibt und zwar anhand der in der Liste enhaltenen Typen.

Kann mir da einer helfen? Gibts da irgendeine Art von Auswertungsmöglichkeit bezüglich der beiden Parameter String und Object?

Danke Tom ;)
 
Hi,
Wenn die Listen gleich groß sind, kannst du doch einfach ne Schleife schreiben, und mit .equals() auf Unterschiede reagieren. Sind die Listen nicht gleich groß, ermittelst du vor deinem Schleifen durchlauf einfach die Größe der kleinsten Liste und läufst die Schleife dann halt nur bis dahin durch.
Ciao
DosCoder
 
Java:
		System.out.println(listA.get(0).getClass());
		System.out.println(listB.get(0).getClass());

Damit erhälst weißt du, was deine Liste enthält.
 
Nun ja wenn es so einfache hätte ich keine Kopfschmerzen.... aber danke erstmal für die Mühe...

Ich beschreib mein Problem mal genauer.

Ich möchte ein Object auslesen das ich nicht kenne bzw erst zur Laufzeit kenne. Also habe ich auf die gute alte reflection zurückgegriffen. Nun hat mein Objekt bestimmte getterMethoden die mir Werte zurückliefern. Unter diesen Werten können auch Listen sein die entwerder Strings enthalten oder Objekte. Da man ja bei der Deklaration schon festlergen kann von welchem Typ die Listen sind, muss es doch auch möglich sein diese Typendefiniton abfragen zu können. Und genau das brauche ich gerade. Bis jetzt stell ich mich bei der Antwortfindung ziemlich blöd an.

Versuch sa in etwa so aus.
Code:
if(method.getReturnValue().isAssignableForm(List.class)&&
method.getReturnType().getTypeParameters().equals(String.class))

aber das geht leider nicht... oder ich stell mich echt zu doof an kann auch sein :)
also wie gesagt ich würde gerne diesen Teil der Deklaration der Liste abprüfen wo die Typen festgemacht werden die in die Liste hinein kommen
 
Zuletzt bearbeitet:
Wenn du dir, wie ich beschrieben die Klasse deines Listeninhalts holst, weißt du doch welche Art von Liste es ist?
 
Da ist was wahres dran Hammet!

müsst ich nur ne If-Anweisung schreiben die prüft ob mein Object ne Liste ist. und dann prüfen was das erste element für ne Klasssen hat. gesetz dem fall das die liste not null ist.

okay... ich hab jetzt den Durchblick danke ;)
 

Neue Beiträge

Zurück