明天早上就要展示這次的成果了。
今天最大的收穫就是,以後在測試程式的時候,資料一定要多方面驗證。不能只單一的資料,執行程式一看,咦!成功了耶,就沾沾自喜,覺得終於解決了。
此次感受最大。以此來對昨天,就那個排序問題說的。
昨天本來以為已經成功了,今天給負責合併的組員後,在他那裡測試後,錯誤終於還是出來了。他說讓我再改改吧。
我本來以為肯定是正確的,結果人家的資料測試出問題了,一開始還是挺崩潰的看程式,因為畢竟昨天花了好長時間解決的。
然後,再次分析我的程式和測試資料的時候,果然,果然還是我的錯。
測試資料是有問題,太單一,但恰恰是這乙個單一的資料正好可以在這個程式下正確的執行!導致我昨天以為自己解決問題了,其實未然。
問題就是這裡:
看昨天的日誌大家會發現,我的測試資料裡面,重複的id名最多就是兩次,沒有三次以上了。
而恰好,我的程式完美的解決了這出現兩次的問題!
因為迭代器裡對資料remove之後,就沒有了,我兩個資料正好,乙個儲存合併資料,乙個不要了。
如果有三個或者三個以上,第一次兩個合併之後,就會出現乙個空位置,怎麼和後邊的繼續比較?
所以,今天還是繼續對問題進行解決。
後來還是有進展的,既然這個行不通了。就用另乙個方法:
需要刪除的先放到乙個暫時定義list的temp裡面,在最後用removeall()將temp從主list裡面除去。(昨天部落格裡面說的)
其實,昨天卡在上面這個方法的某處咯,結果今天發現了。
listdete =new linkedlist();
就是定義這個儲存暫時刪除需要的元素這塊!需要這樣來定義之後才可以。到現在也不明白為什麼這樣定義。
(linkedlist類是雙向列表,列表中的每個節點都包含了對前乙個和後乙個元素的引用.)
最後修改的**如下:
liststulist =new salesrv().fetchall();
listdete =new linkedlist();
iteratorit=stulist.iterator();
int j=0,k=0;
while (it.hasnext()){
sale sa=it.next();
string temp=sa.getgoodsid();
int te=sa.getnumber();
double t=sa.getordersum();
system.out.println(temp);
for (int i=j+1,len=stulist.size();i
這兩天給人的收穫真的還是蠻大的。這對於以後可能走軟體測試也是很好的開頭,有沒有?!
還是需要學習,不斷學習。
2008課程設計題目(三)
指導老師 蔡先發 1 學生選修課程系統設計 假定有n 門課程,每門課程有課程編號,課程名稱,課程性質,總學時,授課學時,實驗或上機學時,學分,開課學期等資訊,學生可按要求 如總學分不得少於 60 自由選課。試設計一選修課程系統,使之能提供以下功能 系統以選單方式工作v 課程資訊錄入功能 課程資訊用檔...
nyoj 504 課程設計
時間限制 3000 ms 記憶體限制 65535 kb 難度 2 描述 新學期伊始,gangster 老師又在為如何給學生分配課程設計題目而犯愁,gangster老師老共有 n 名學生和 m 個可選的題目,根據這些學生平時的表現,gangster 老師精確計算出了每名學生完成各個課程設計題目所需的時...
nyoj 504 課程設計
時間限制 3000 ms 記憶體限制 65535 kb 難度 2 描述新學期伊始,gangster 老師又在為如何給學生分配課程設計題目而犯愁,gangster老師老共有 n 名學生和 m 個可選的題目,根據這些學生平時的表現,gangster 老師精確計算出了每名學生完成各個課程設計題目所需的時間...