将集合转换为int数组

时间:2012-05-19 11:16:04

标签: java collections

我想显示一个图表并显示我需要整数值。我从我的代码中得到了这个

    Collection c = Sort.values();

有没有办法以这样的方式转换集合,我得到整数值?当我打印集合时我得到这个c

    [64770, 26529, 13028, 848, 752, 496]

4 个答案:

答案 0 :(得分:15)

假设值为Integer类型,您可以尝试:

Collection c = Sort.values();
Integer[] a = (Integer[])(c.toArray(new Integer[c.size()]));

答案 1 :(得分:3)

for (Integer value : c) {
    int i = value.intValue();
    //do something with either value or i
}

答案 2 :(得分:1)

简单地:

Integer[] yourArrayVar = yourCollectionVar.toArray(new Integer[0]);

java只需要知道要生成什么样的数组。

答案 3 :(得分:0)

问题是:转换为 int 数组
Integer[]无法分配给int[],反之亦然

int[] array = c.stream().mapToInt( i -> i ).toArray();