探索軟體工程道路上的我 IV (Θ?Θ#)

來源:互聯網
上載者:User

標籤:

開發語言:Java

開發工具:UltraEdit

小夥伴部落格:http://www.cnblogs.com/hyating/

github地址:https://github.com/JUNYU217/2016-03-08

 

|| 為月末了,網費欠了...很抱歉的拖了那麼久的作業   QAQ  ||

------個人小結------

通過這次作業,我學習了檔案流的使用,也感謝小夥伴的幫忙,給了我構思的架構

------作業要求------ 
 基於作業3的結果,讀取一個較小的文字檔,統計該檔案中的單詞的頻率,並將統計結果輸出到目前的目錄下的 Result1.txt 檔案。 (第一階段初稿完成該要求)
  • 首先按照頻率由高到低排序
  • 頻率一樣的詞, 按照字典順序排序
  • 詳情戳這!
 ------程式編寫------

 

這次的作用基於第三次作業上有所改動,具體方法在代碼中體現

首先感謝我的舍友苗中鋒提供給我的排序演算法,我一直糾結了好久,通過鍵排序,通過值排序一直達不到排序的要求

List<Map.Entry<String, Integer>> list = new ArrayList<Map.Entry<String, Integer>>(map.entrySet());Collections.sort( list, new Comparator<Map.Entry<String, Integer>>(){     public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {     if(o1.getValue()<o2.getValue())return 1;else if(o1.getValue()>o2.getValue())return -1;elsereturn(o1.getKey().compareTo(o2.getKey()));}} );

排序後,通過java中 io 提供的方法完成了輸出

File outfile = new File("D:\\Software\\SorfwareTest\\Result.txt");         try         {             if (file.exists()) outfile.delete();            BufferedWriter bw = new BufferedWriter(new FileWriter(outfile));             StringBuffer out = new StringBuffer();             for(Map.Entry<String,Integer> mapping:list)            {                 out.append(mapping.getKey()+":"+mapping.getValue()+"\r\n");             }             bw.write(out.toString());             bw.flush();             bw.close();         }         catch (IOException e)         {             e.printStackTrace();        });

 

------程式運行------

未編譯前

 

在編譯和運行後產生了 Result.txt

開啟Result.txt,結果是正確的~

 

 

 

 

 

探索軟體工程道路上的我 IV (Θ?Θ#)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.