Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
ich würde gerne eine doppelte generische Liste verwenden. Bei c# hat das ganz gut geklappt, allerdings bei Java bekomme ich eine Warnung.
Java:
List<String> l1= new ArrayList<String>();
List<Integer> l2= new ArrayList<Integer>();
master.add(l1);
master.add(l2);
List<List> main= new ArrayList<List>();
Eclipse sagt jetzt, ich sollte das nicht so machen, da die Liste ein "Raw Type" ist und, so wie ich das verstehe, nicht sicher zu verarbeiten. Was muss ich ändern, damit das passt? Wenn ich einfach "Object" sage will Eclipse mich nur Listen vom Typ Object einfügen lassen. Ich hätte aber gerne eine "main" Liste, die die anderen beinhält.
Zeig mal etwas mehr. In deinem obersten Beispiel war das Attribut master gar nicht definiert. Das was ich dir oben geschrieben habe funktionier auf jeden Fall.
[Java]
List<List> main= new ArrayList<List>();
List<String> l1= new ArrayList<String>();
List<Integer> l2= new ArrayList<Integer>();
String s = "Test";
main.add(l1);
main.get(0).add(s);
String c = (String)(main.get(0).get(0));
System.out.println(c);
[/Java]
Da meckert es, nur ist mir nicht klar, was an dem Raw Typ so schlecht ist ... solangs gescheid verwertet wird, muss man sich ja nicht dran stören ... warum meckert das also^^
Edit: Java Version habe ich mir erst gestern die Neuste geladen, da ich meinen PC neu aufsetzen musste :S
List<List<?>> main = new ArrayList<List<?>>();
List<String> l1 = new ArrayList<String>();
List<Integer> l2 = new ArrayList<Integer>();
String s = "Test";
main.add(l1);
((List<String>) main.get(0)).add(s);
String c = (String) (main.get(0).get(0));
System.out.println(c);
WIrft aber ein Warning. Ich gehe jetzt aber Frühstücken!
List<List<?>> main= new ArrayList<List<?>>(); <-- damit sagt es, "The method add(capture #1-of ?) ... is not applicable for the arguments (String)" was mir gar nichts sagt ... was will es mir denn damit sagen, abgesehen von, es kann String nicht verarbeiten?
Edit: um genau zu sein, meckert er in der Zeile "main.get(0).add(s);"
Mhhh aber dann habe ich ja wieder die "@SuppressWarnings("unchecked")" beim add und die "@SuppressWarnings("rawtypes")" bei der Liste ... ist es nicht möglich die zu umgehen?
Ich habs^^ einfach alle Listen zum Typ "Object" und dann hat er nichts zu meckern^^