我有这个方法:
public void checkCategories(Integer... indices) {
.....
}
此方法的输入是Integer
列表的列表。
我的问题是如何将整数列表转换为整数数组,并在该方法中传递?
答案 0 :(得分:1)
您可以按方法toArray()
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