我有一个基元数组,例如 int、int[] foo。它可能是小型的,也可能不是。
int foo[] = {1,2,3,4,5,6,7,8,9,0};
从中创建一个的最佳方法是Iterable<Integer>
什么?
Iterable<Integer> fooBar = convert(foo);
笔记:
请不要使用循环来回答(除非你能很好地解释编译器如何对它们做一些聪明的事情?)
另请注意
int a[] = {1,2,3};
List<Integer> l = Arrays.asList(a);
甚至不会编译
Type mismatch: cannot convert from List<int[]> to List<Integer>
还要检查 为什么数组不能分配给 Iterable? 在回答之前。
另外,如果您使用某些库(例如 Guava),请解释为什么这是最好的。(因为它来自谷歌不是一个完整的答案:P)
最后,由于似乎有一个家庭作业,请避免发布家庭作业代码。