具有第一个元素和一个附加集合的列表初始化[重复]

问题描述 投票:2回答:3

此问题已经在这里有了答案:

是否有这样的简写方式(可能是番石榴或任何lib)来初始化Java List

List list = MagicListUtil.newArrayList(firstElement, moreElementsList);


java list arraylist java-8 guava
3个回答
3
投票

番石榴提供了几种可能性

如果有数组,请使用Lists.asList(...)

Lists.asList(...)

如果有列表或其他String first = "first"; String[] rest = { "second", "third" }; List<String> list = Lists.asList(first, rest); ,请使用Iterables

FluentIterable.of(...).append(...).toList()

但是您也可以在Java 8中做到这一点

尽管,虽然更冗长,但仍然...

带有数组

FluentIterable.of(...).append(...).toList()

有收藏集

String first = "first";
List<String> rest = Arrays.asList("second", "third");
List<String> list = FluentIterable.of(first).append(rest).toList();

-1
投票

是的,您可以简单地将java.util.Arrays类用于单个和多个元素。

String first = "first";
String[] rest = { "second", "third" };
List<String> list = Stream.concat(Stream.of(first), Arrays.stream(rest))
  .collect(Collectors.toList());

您可以将java.util.Collections用于具有单个元素的列表。

String first = "first";
List<String> rest = Arrays.asList("second", "third");
List<String> list = Stream.concat(Stream.of(first), rest.stream())
  .collect(Collectors.toList());

-1
投票

如果您想复制列表,可以像这样由构造函数来完成

List<String> strings = Arrays.asList("first", "second", "third");
© www.soinside.com 2019 - 2024. All rights reserved.