List einer ArrayList zuweisen.

  • Themenstarter Themenstarter Guest
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Die Methode getChildren liefert List zurück. Ich würde nun gerne einem Objekt vom Typ ArrayList ein Interface vom Typ List zuweisen. Geht das irgendwie?

Code:
ArrayList<Element> a = new ArrayList<Element>(); 
a = aktuellesElement.getChildren("Berechtigungen");
 
Welchen Grund sollte es dafür geben?
Code:
List<Element> a = new ArrayList<Element>();
a = aktuellesElement.getChildren("Berechtigungen");
 
Wenn ich den Code so lasse wie er unten ist, dann wird nachdem ich die Methode removeChilren aufgerufen habe auch berechtigungenTagListe auf leer gesetzt, da es sich dabei um einen Zeiger und kein selbständiges Objekt handel. Ich brauche also berechtigungenTagListe als eigenes Objekt und nicht als Referenz. Wie kann ich das anstellen?


Code:
List<Element> berechtigungenTagListe = aktuellesElement.getChildren("Berechtigungen");
List<Element> datenTagListeB = null;

if(berechtigungenTagListe.size() > 0)
{
    Element berechtigungen = berechtigungenTagListe.get(0);
    datenTagListeB = berechtigungen.getChildren();
    aktuellesElement.removeChildren("Berechtigungen");
}

...

if(berechtigungenTagListe.size() > 0)
{
}
 
Was jetzt die Frage ist, ist noch nicht ganz klar, aber du kannst mit

List<XXX> kopie = new ArrayList<XXX>(dingens.getChildren());

eine Kopie der Liste erstellen, die von getChildren zurückegeben wird...
 
Oder so:

Code:
List<Object> berechtigungenTagListeCopy = Arrays.asList(berechtigungenTagListe.toArray());
 
ne... dann doch lieber das von Marco13 verwenden... Arrays.asList erzeugt eine fixed-size-List... sprich, du kannst sie nicht vergrößern - sie ist also nur inhaltlich zunächst dieselbe, verhalten tut sie sich später anders. Außerdem muss man via toArray erstmal einmal durchlaufen und nen Array erzeugen um danach nochmal durch das Array zu rennen und ne Liste zu generieren, ein Arbeitsschritt zuviel also 😉
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben