如何在Java中将int []转换为Integer []?我是Java的新手,非常困惑。我有一个长度为4的大型数据集,int[]我想计算4个整数的每个特定组合出现的次数。这与计算文档中的单词频率非常相似。我想创建一个Map<int[], double>将每个int []映射到一个运行计数的列表迭代,但Map不采用原始类型。所以我做了 Map<Integer[], Double>我的数据存储为一个ArrayList<int[]>所以我的循环应该是这样的ArrayList<int[]> data = ... // load a dataset`Map<Integer[], Double> frequencies = new HashMap<Integer[], Double>();for(int[] q : data) { // **DO SOMETHING TO convert q from int[] to Integer[] so I can put it in the map if(frequencies.containsKey(q)) { frequencies.put(q, tfs.get(q) + p); } else { frequencies.put(q, p); }}我不确定在评论中需要哪些代码才能使这项工作转换int[]为Integer[]。或者我可能从根本上对正确的方法感到困惑。
3 回答
米琪卡哇伊
TA贡献1998条经验 获得超6个赞
只需使用:
public static int[] intArrayToIntegerArray(Integer[] array) { int[] g = new int[array.length]; for(int i = 0; i < array.length; i++){ g[i] = array[i]; } return g; }
MMTTMM
TA贡献1869条经验 获得超4个赞
这就像一个魅力!
int[] mInt = new int[10];Integer[] mInteger = new Integer[mInt.length];List<Integer> wrapper = new AbstractList<Integer>() { @Override public int size() { return mInt.length; } @Override public Integer get(int i) { return mInt[i]; }};wrapper.toArray(mInteger);
添加回答
举报
0/150
提交
取消