第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java統(tǒng)計文件注釋個數和注釋字符數

Java統(tǒng)計文件注釋個數和注釋字符數

慕仙森 2019-02-20 21:17:20
我把文件一行一行地存入到了動態(tài)數組 list中,然后刪除list里面的注釋和輸出語句。其中countNote是算注釋個數的,charInNote是算注釋的總字符數的??墒亲詈蟮玫降膌ist存在很多問題,有大佬能幫我改一下代碼嗎這是測試文件String.java 注釋總個數應該有156個注釋總的字符數應該有 88469個 public void operateNote(ArrayList<String> list) throws Exception{ String s = null; for(int j=0;j<list.size();j++) { s=list.get(j); int note1=s.indexOf("/*"); int note2=s.indexOf("http://"); int note3=s.indexOf("*/"); //int note4=s.indexOf("\""); String dm="\"(.*)\"";//雙引號 String sm="\'(.*)\'";//單引號 if(note1!=-1&&note3==-1) {//多行注釋 countNote++; String ttt=list.get(j); list.set(j, ttt.substring(0, note1)); charInNote+=s.substring(note1).length()+1;//+1是包括換行符 s=list.get(++j); while((note3=s.indexOf("*/"))==-1) { if((note2=s.indexOf("http://"))!=-1) { countNote++; } list.remove(j); charInNote+=s.length()+1; if(j<list.size()-1) { s=list.get(++j); }else { break; } } list.remove(j); charInNote+=s.length(); }else if(note2!=-1) {// "http://"類的單行注釋 countNote++; list.set(j, s.substring(0,note2)); charInNote+=s.substring(note2).length()+1; }else if(note1!=-1&&note3!=-1) {//單行注釋 countNote++; String m1=s.substring(0, note1); String m2=s.substring(note3+2); String m3=m1+m2; charInNote+=s.substring(note1, note3+2).length(); list.set(j, m3); }else {//刪除輸出語句 String rp=list.get(j); rp=rp.replaceAll(dm, ""); list.set(j, rp); } } }
查看完整描述

4 回答

?
千萬里不及你

TA貢獻1784條經驗 獲得超9個贊

把list.remove(j)改成list.set(j,"")即可

查看完整回答
反對 回復 2019-03-01
?
Helenr

TA貢獻1780條經驗 獲得超4個贊

用正則表達式的方法太粗陋了,我覺得你可以試一下StreamTokenizer,可以自動解析注釋、字符串等

查看完整回答
反對 回復 2019-03-01
?
喵喵時光機

TA貢獻1846條經驗 獲得超7個贊

你這個對與邏輯不是很清晰:
應該是這樣:
字符串首先trim,去除前后空格
先判斷/**
如果是,記錄多行狀態(tài)為true,累加注釋個數
在此期間的//忽略,累加注釋字符數
再判斷*/,如果是,記錄多行狀態(tài)為false,
判斷//,如果是,記錄//到字符串尾的字符數.累加注釋字符數,累加注釋個數
還有,我在枚舉中喜歡 /* 注釋 / 這樣考慮,你也要注意下.

查看完整回答
反對 回復 2019-03-01
  • 4 回答
  • 0 關注
  • 808 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號