如何在Java 8中将List转换为varargs对象

时间:2019-02-15 14:40:10

标签: java arrays java-8

我有一个函数(findByNames)可以接受扩展参数,如下例所示:

List<Users> findByNames(String... names)
{
  ...
} 

作为参数,我有一个列表:

List<String> names = asList("john","abraham");

所以我想将names列表转换为传播对象以使用findByNames函数,使用Java 8可以吗? 我尝试了此解决方案:

MapUtils.getMap(names.toArray(new String[names.size()]))

但是它不起作用!

谢谢您的时间。

1 个答案:

答案 0 :(得分:4)

List<String>转换为数组String[]

// Java-8(tag in question)
List<Users> users = findByNames(names.toArray(new String[0]));
// Java-11
List<Users> users = findByNames(names.toArray(String[]::new));