Zählen doppelte Werte in der Hashmap
Ich habe eine hash map, die wie folgt aussieht:
HashMap<String, ArrayList<String>> varX = new HashMap<String, ArrayList<String>>();
Und ich kann nicht für das Leben von mir herauszufinden, wie man die Anzahl der doppelten Werte.
Zum Beispiel, Wenn put("001", "DM");
in die hash map und put("010", "DM");
genauso, wie Sie zählen können, wenn es zwei Werte int ArrayList Abschnitt der Hashmap.
Beispielsweise die Ausgabe würde wie folgt Aussehen:
DM:2
wie ich 'setzen' zwei DM-Werte in der Hashmap.
Sie können nicht
Sind Sie fine mit mit eine zweite HashMap zu zählen?
Sie sollten auf jeden Fall check Guave Multimap. Es speichert eine
put("001", "DM");
. "DM"
ist nicht ein ArrayList<String>
. Was tun Sie eigentlich?Sind Sie fine mit mit eine zweite HashMap zu zählen?
Sie sollten auf jeden Fall check Guave Multimap. Es speichert eine
Collection
als Wert, aber Sie haben nicht zu sorgen. Sie können einfach schreiben multiMap.put("DM", "123");
. Und daran, dass Sie wechseln sollten Ihre key und Wert. DM
sollte die key.InformationsquelleAutor user2379090 | 2014-12-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie eine HashMap, die Google maps
String
zuArrayList<String>
.Tun
put("001", "DM")
auf dieser Karte wird nicht funktionieren, da darauf hingewiesen wurde, um Sie in die Kommentare @Sotirios Delimanolis.Erhalten Sie eine Fehlermeldung, die sieht so aus:
Basierend auf deinem Beispiel Verhalten, Sie wollen eine
HashMap
dass KartenString
zuString
(d.h.put("001", "DM");
Nun, vorausgesetzt, Sie haben:
Und Sie zählen möchten , wie viele Schlüssel die Karte auf den gleichen Wert, hier ist, wie können Sie das tun:
InformationsquelleAutor nem035
Als Sotirios sagt, man kann Sie nur mit einer ArrayList.
Wenn Sie möchten, legen Sie Zeichenfolgen in die HashMap definieren es wie folgt:
Grüße,
Beide können verwendet werden, ohne problem: ich möchte, erstellen Sie das Objekt, String, weil in der HashMap es ist definiert als die String-Klasse. Und mir ist es lieber, das ist alles 🙂
Mit einem string-literal
"Rooney"
wird auch einString
Objekt. Alles, was Sie getan haben, ist erstellen eine vergebliche doppeltes Objekt.Sie es vorziehen, zu erstellen, duplizieren Sie die String-Objekte? Mhh, ok. Wie Ihr, lieber mit raw-Typen anstelle von Generika.
Sie haben vielleicht einige Dinge verwechselt, check out this link String-Objekt vs-Literal
InformationsquelleAutor MartaGom
Collections.frequency(map, "value");
wird verwendet, um die Anzahl der übergebenen Objekts in die Sammlung.Im folgenden ist die Deklaration dieser Methode:
InformationsquelleAutor Imdad Soomro
Ausgabe:Wenn Sie drucken Ihre newHm bekommen Sie "ein"-3 "zwei"-2.
Hey Kann ich wissen, obige code ist sinnvoll ?
InformationsquelleAutor Saravanan R