1. 程式人生 > 其它 >巧用Set解決 不同單詞個數統計

巧用Set解決 不同單詞個數統計

題目 1487:不同單詞個數統計

題目描述

編寫一個程式,輸入一個句子,然後統計出這個句子當中不同的單詞個數。例如:對於句子“one little two little three little boys”,總共有5個不同的單詞:one, little, two, three, boys。
說明:(1)由於句子當中包含有空格,所以應該用gets函式來輸入這個句子;(2)輸入的句子當中只包含英文字元和空格,單詞之間用一個空格隔開;(3)不用考慮單詞的大小寫,假設輸入的都是小寫字元;(4)句子長度不超過100個字元。

輸入

輸入只有一行,即一個英文句子。

輸出

輸出只有一行,是一個整數,表示句子中不同單詞的個數。

樣例輸入

one little two little three little boys

樣例輸出

5

思路

將字串分割,存到數組裡,然後直接給到set集合中,因為Java中的set不允許存放重複元素,因此會過濾掉重複的單詞,最後直接輸出set的size就是答案了。

程式碼:

import java.util.Arrays;
import java.util.HashSet;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = scanner.nextLine();
        String[] strArr = str.split(" ");
        HashSet<String> set = new HashSet<>(Arrays.asList(strArr));
        System.out.println(set.size());
    }
}