ฉันใหม่กับ 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[]
หรือบางทีฉันสับสนโดยพื้นฐานเกี่ยวกับวิธีการทำเช่นนี้