Heim > Java > javaLernprogramm > Hauptteil

Wie kann ich mithilfe von Java Streams das Vorkommen von Zeichenfolgen in einer Liste zählen?

Mary-Kate Olsen
Freigeben: 2024-11-11 06:39:02
Original
635 Leute haben es durchsucht

How Can I Count String Occurrences in a List Using Java Streams?

Vorkommen zählen mit groupBy

Die groupBy-Methode in Java-Streams ermöglicht es uns, Elemente basierend auf einem angegebenen Schlüssel in Gruppen zu sammeln. In diesem Fall möchten wir Zeichenfolgen nach ihrem Wert gruppieren und die Vorkommen innerhalb jeder Gruppe zählen.

Um dies zu erreichen, können wir die Überladung von groupBy verwenden, die einen zweiten Collector benötigt. Wir werden Collectors.counting() als diesen Collector bereitstellen, der die Elemente innerhalb jeder Gruppe zählt.

So implementieren Sie dies mithilfe eines Streams:

import java.util.*;
import java.util.stream.*;

class Test {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();

        list.add("Hello");
        list.add("Hello");
        list.add("World");

        Map<String, Long> counted = list.stream()
            .collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));

        System.out.println(counted);
    }
}
Nach dem Login kopieren

Dies führt zu Folgendem Ausgabe:

{Hello=2, World=1}
Nach dem Login kopieren

Die Karte enthält zwei Einträge, wobei „Hello“ auf 2 und „World“ auf 1 abgebildet ist. Dies stellt die Anzahl der Vorkommen dar für jedes Wort in der Eingabeliste.

Beachten Sie, dass wir auch „groupingByConcurrent“ verwenden können, um die Effizienz zu verbessern, insbesondere in Szenarien, in denen die gleichzeitige Ausführung sicher ist.

Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von Java Streams das Vorkommen von Zeichenfolgen in einer Liste zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage