Mit Eclipse-Kollektionen können Sie Folgendes schreiben:
List<String> list = Lists.mutable.with("Buenos Aires", "Córdoba", "La Plata");
Sie können auch genauere Angaben zu den Typen machen und angeben, ob sie veränderbar oder unveränderlich sind.
MutableList<String> mList = Lists.mutable.with("Buenos Aires", "Córdoba", "La Plata");
ImmutableList<String> iList = Lists.immutable.with("Buenos Aires", "Córdoba", "La Plata");
Dasselbe können Sie auch mit Sets und Taschen machen:
Set<String> set = Sets.mutable.with("Buenos Aires", "Córdoba", "La Plata");
MutableSet<String> mSet = Sets.mutable.with("Buenos Aires", "Córdoba", "La Plata");
ImmutableSet<String> iSet = Sets.immutable.with("Buenos Aires", "Córdoba", "La Plata");
Bag<String> bag = Bags.mutable.with("Buenos Aires", "Córdoba", "La Plata");
MutableBag<String> mBag = Bags.mutable.with("Buenos Aires", "Córdoba", "La Plata");
ImmutableBag<String> iBag = Bags.immutable.with("Buenos Aires", "Córdoba", "La Plata");
Note : Ich bin ein Committer für Eclipse Collections.
43 Stimmen
Wenn dies für Unit-Tests gedacht ist, sollten Sie Groovy einmal ausprobieren. Sie können Ihren Testcode in Groovy schreiben, während Sie Java-Code testen, und mit
ArrasyList<String> places = ["Buenos Aires", "Córdoba", "La Plata"]
5 Stimmen
In Java SE 7 können Sie den parametrisierten Typ des Konstruktors durch eine leere Menge von Typparametern (<>) ersetzen: Map<String, List<String>> myMap = new HashMap<>();
2 Stimmen
Siehe auch stackoverflow.com/questions/157944/erstelle-arraylist-aus-array
2 Stimmen
Doppelte Klammern zur Initialisierung verwenden :)
0 Stimmen
Es scheint, dass Sie sich die Frage selbst beantwortet haben: ArrayList<String> places = new ArrayList<String>(asList("Buenos Aires", "Córdoba", "La Plata")); Arrays in Arrays.asList ist nicht erforderlich.
13 Stimmen
Stream.of("val1", "val2").collect(Collectors.toList()); //erzeugt ArrayList, Java8-Lösung.
0 Stimmen
Warum nicht einfach String [] places = {"Buenos Aires", "Córdoba", "La Plata"); ?
0 Stimmen
@PaulSmith Er könnte an einem elastischen Array interessiert sein, das dynamisch wachsen kann. Ihre Initialisierung macht Orte nur drei Elemente zu haben.
4 Stimmen
Ich verstehe nicht, warum wir nicht so etwas haben können wie
List<Integer> = {1, 2, 3, 4, 5}
in Java. Erstellen und init ein veränderbares Array in einer Zeile, wie ich weiß, Python und Swift könnte das tun.