从Java中的2D数组创建链接列表

时间:2020-07-19 21:22:51

标签: java

如果我有一个2D字符串数组(或int数组),怎么能用它来创建一个链表呢?链表可以是2D链表,也可以是常规链表,列表是双,单,循环或多链接列表。

1 个答案:

答案 0 :(得分:0)

您可以使用两个嵌套的for循环或Java 8流。

对于二维图元数组:

final int[][] arr = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9, 10 } };
final LinkedList<LinkedList<Integer>> list = Arrays.stream(arr)
        .map(x -> Arrays.stream(x).boxed().collect(Collectors.toCollection(LinkedList::new)))
        .collect(Collectors.toCollection(LinkedList::new));
System.out.println(list);

对于二维对象数组:

final String[][] arr2 = {
        {"a","b"},{"c"},{"d","e","f"}
};
final LinkedList<LinkedList<String>> list2 = 
        Arrays.stream(arr2).map(x -> new LinkedList<>(Arrays.asList(x)))
        .collect(Collectors.toCollection(LinkedList::new));
System.out.println(list2);