巧用Set解決 不同單詞個數統計
阿新 • • 發佈:2021-11-13
題目 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()); } }