在java中将整数列表转换为整数数组

时间:2017-01-18 09:22:20

标签: java

我有这个方法:

 public void checkCategories(Integer... indices) {
    .....
  } 

此方法的输入是Integer列表的列表。

我的问题是如何将整数列表转换为整数数组,并在该方法中传递?

3 个答案:

答案 0 :(得分:1)

您可以按方法toArray()

将List转换为数组
List<Integer> integerList = new ArrayList<Integer>();

Integer[] flattened = new Integer[integerList.size()];
integerList.toArray(flattened);

checkCategories(flattened);

答案 1 :(得分:0)

如果您需要将列表列表展平为数组,可以尝试类似的内容:

public static void main(String [] args) {
    List<List<Integer>> integers = Lists.newArrayList(
            Lists.newArrayList(1, 2, 3, 4),
            Lists.newArrayList(5, 3, 6, 7)
    );

    Integer[] flattened = integers.stream()
            .flatMap(Collection::stream)
            .toArray(Integer[]::new);

    checkCategories(flattened);
}

public static void checkCategories(Integer... indices) {
    for (Integer i : indices) {
        System.out.println(i);
    }
}

打印:

1
2
3
4
5
3
6
7

答案 2 :(得分:0)

您可以将列表转换为public static void main(String args[]) { List<String> list = new ArrayList<>(); list.add("George"); list.add("John"); Object[] objectArray = list.toArray(); System.out.println(java.util.Arrays.toString(objectArray)); String[] stringArray = list.toArray(new String[0]); System.out.println(java.util.Arrays.toString(objectArray)); } ,如下所示:

ArrayList

然后,您可以使用

将该列表转换为userList = new ArrayList<Integer>();
Array