我有一个原始类型的数组,例如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),请解释为什么这是最佳选择。(因为它来自Google不是完整的答案:P)
最后,由于似乎有一些作业与此相关,请避免发布类似作业的代码。