如何将List <List <String >>转换为Object [] []

Dam*_*mar 1 java arrays collections list

我有一个构建List<List<String>>对象的方法.我需要将此列表转换为键入Object[][]并返回它.我不能这样做,当我添加Object[]一个列表时,所有数组元素都被添加为单个对象.

List<Object[]> list = new ArrayList<Object[]>();
list.add(new Object[2]{"A", "B"});
return list.toArray();
Run Code Online (Sandbox Code Playgroud)

从上面的例子,return list.toArray()将返回Object[]Object[][]虽然它被宣布为List<Object[]>;

请帮得到Object[][]List<List<String>>

Mur*_*nik 6

最简单的方法可能是流式传输列表,并单独处理子列表:

List<List<String>> list = /* something */
Object[][] result = 
    list.stream()
        .map(List::toArray)
        .toArray(Object[][]::new);
Run Code Online (Sandbox Code Playgroud)