Zeichenhäufigkeit in einer Zeichenfolge
Die Bestimmung der Häufigkeit jedes Zeichens in einer Zeichenfolge ist eine häufige Programmieraufgabe. In diesem Zusammenhang wird eine Lösung mit Java-Map- und Multiset-Ansätzen skizziert.
Java-Map-Ansatz
Um eine Karte mit jedem Zeichen als Schlüssel und seiner Anzahl als zu erstellen Wenn Sie einen Wert angeben, können die folgenden Schritte ausgeführt werden:
Überprüfen Sie, ob Das aktuelle Zeichen ist bereits ein Schlüssel in der Karte.
Beispiel:
<code class="java">Map<Character, Integer> map = new HashMap<>(); String s = "aasjjikkk"; for (int i = 0; i < s.length(); i++) { char c = s.charAt(i); Integer val = map.get(c); if (val != null) { map.put(c, val + 1); } else { map.put(c, 1); } }
Multiset-Ansatz
Alternativ die Die Guava-Multiset-Implementierung kann verwendet werden, um das Vorkommen von Zeichen effizient zu zählen. Multisets ermöglichen das Speichern mehrerer Instanzen eines Elements und die automatische Verfolgung ihrer Anzahl.
Beispiel:
<code class="java">Multiset<Character> multiset = HashMultiset.create(); String s = "aasjjikkk"; for (char c : s.toCharArray()) { multiset.add(c); }</code>
Das Multiset-Objekt enthält die Zeichenanzahl als Werte.
Mit beiden Ansätzen können Sie effektiv die Häufigkeit jedes Zeichens in einer Zeichenfolge bestimmen und so Flexibilität und Leistungsoptimierungen je nach Ihren spezifischen Anforderungen bieten.
Das obige ist der detaillierte Inhalt vonWie kann man mit Java effizient Zeichenhäufigkeiten in einer Zeichenfolge zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!