Daniel Hari:
¿Hay una forma abreviada (puede ser de guayaba o cualquier lib) para inicializar una aplicación Java Lista de esta manera?
List list = MagicListUtil.newArrayList(firstElement, moreElementsList);
Olivier Grégoire:
Si tiene matrices, el uso
Si tiene listas u otro
Guayaba ofrece varias posibilidades
Si tiene matrices, el uso Lists.asList(...)
String first = "first";
String[] rest = { "second", "third" };
List<String> list = Lists.asList(first, rest);
Si tiene listas u otro Iterables
, el uso FluentIterable.of(...).append(...).toList()
:
String first = "first";
List<String> rest = Arrays.asList("second", "third");
List<String> list = FluentIterable.of(first).append(rest).toList();
Pero se puede hacer eso en Java 8, así
A pesar de que, es mucho más prolija, pero aún así ...
Con una matriz
String first = "first";
String[] rest = { "second", "third" };
List<String> list = Stream.concat(Stream.of(first), Arrays.stream(rest))
.collect(Collectors.toList());
Con una colección
String first = "first";
List<String> rest = Arrays.asList("second", "third");
List<String> list = Stream.concat(Stream.of(first), rest.stream())
.collect(Collectors.toList());