ホームページ >Java >&#&チュートリアル >Java で `groupBy` と `Collectors.counting()` を使用してリスト内の単語の出現を数えるにはどうすればよいですか?
groupBy を使用した出現数のカウント
ストリーム内のデータを分類および要約するための 1 つの手法は、groupBy メソッドを利用することです。 groupBy を活用することで、要素をその特性に基づいて分離し、結果として得られるグループに対して操作を実行できます。
特定のシナリオでは、指定されたリスト内の単語の頻度を確認しようとします。効率的なアプローチの 1 つは、groupBy と Collectors.counting() を組み合わせることです。この手法を使用すると、類似した属性を持つオブジェクトをグループ化し、各グループ内の出現数を判断できます。
たとえば、次の入力リストがあるとします。
List<String> list = Arrays.asList("Hello", "Hello", "World");
次のコマンドを使用してマップを取得できます。単語数は次のようになります:
import java.util.*; import java.util.stream.*; class Test { public static void main(String[] args) { Map<String, Long> wordToFrequency = list.stream() .collect(Collectors.groupingBy(Function.identity(), Collectors.counting())); System.out.println(wordToFrequency); } }
結果のマップは次のようになります:
{Hello=2, World=1}
ここで、各キーは一意の単語を表し、対応する値はリスト内での出現数を示します。
以上がJava で `groupBy` と `Collectors.counting()` を使用してリスト内の単語の出現を数えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。