本案例研究編寫了一個程序,用於計算文本中單字的出現次數,並按單字的字母順序顯示單字及其出現次數。該程式使用 TreeMap 來儲存由單字及其計數組成的條目。對於每個單詞,檢查它是否已經是映射中的鍵。如果沒有,請在地圖上新增一個條目,其中單字為鍵,值為 1。否則,將地圖中單字(鍵)的值增加 1。假設單字不區分大小寫;例如,Good 的處理方式與 good.
相同下面的程式碼給出了問題的解決方案。
a2
1 級
有趣1
好3
有 3
早上1
訪問 1
程式建立一個TreeMap(第11行)來儲存單字對及其出現次數。這些詞當作鑰匙。由於映射中的所有值都必須儲存為對象,因此計數包含在 Integer 物件中。
程式使用 String 類別中的 split 方法(第 13 行)從文本中提取單字。對於提取的每個單詞,程式都會檢查它是否已作為鍵儲存在映射中(第 18 行)。如果不是,則由單字及其初始計數 (1) 組成的新物件儲存在映射中(第 19 行)。否則,單字的計數將增加 1(第 21-23 行)。
程式取得集合中對應的條目(第29行),並遍歷集合以顯示每個條目中的計數和鍵(第32-33行)。
由於地圖是樹狀地圖,因此條目按單字升序顯示。您也可以按出現次數的升序來顯示它們。
現在坐下來想想如何在不使用地圖的情況下編寫這個程式。你的新程序會更長、更複雜。你會發現map是一個非常有效率、強大的資料結構,可以解決諸如此類的問題。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3