Ich bin neu in Java und sehr verwirrt.
Ich habe einen großen Datensatz mit der Länge 4 int[]
und möchte zählen, wie oft jede bestimmte Kombination von 4 Ganzzahlen auftritt. Dies ist dem Zählen von Worthäufigkeiten in einem Dokument sehr ähnlich.
Ich möchte eine erstellen Map<int[], double>
, die jedes int [] einer laufenden Anzahl zuordnet, während die Liste durchlaufen wird, aber Map akzeptiert keine primitiven Typen.
also habe ich gemacht Map<Integer[], Double>
Meine Daten werden als gespeichert, ArrayList<int[]>
daher sollte meine Schleife so etwas wie sein
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);
}
}
Ich bin mir nicht sicher, welchen Code ich im Kommentar benötige, damit dies funktioniert, um einen int[]
in einen zu konvertieren Integer[]
. Oder vielleicht bin ich grundlegend verwirrt über den richtigen Weg, dies zu tun.