1、 某**管理系統,使用者註冊時,**號碼為可選輸入項,輸入格式為:區號-**號碼—分機號,中間用「-」隔開。以下為jsp頁面上的設計,且並未對輸入做任何控制。
假設系統現在需要取出中間的**號碼部分,**如下:
/**要求:(1) 寫出問題所在* * 該方法根據使用者輸入取出中間的**號碼部分
* @param strphonenum **號碼,如:「0591-83279988—002」
* @return 返回號碼部分,如:「83279988」
*/public string getphonenumber(string strphonenum)
string arrphone=strphonenum.split("-");
return arrphone[1];
}
問題一:
public string getphonenumber (我是不知道為啥 我這個呼叫的時候提示我加個 static,就單個問題一好了)
問題二只能根據使用者輸入的符號 「-」進行分割字段,而且提取的是第二字段,也就是說沒有「-」這個符號的話就沒法進行進行返回**號碼。而且根據split的用法只有出現第二個-的時候。提取的第二欄位才結束。所以只出現乙個-的話就出現了以下的問題,講「-」之後的內容全部返回了。
問題三:
沒法進行**號碼的長度判定。比如區號。**號碼。分機號的判斷。
看我都輸入了這麼長的**都沒有報錯。
(2) 寫出問題產生的原因
問題二產生的原因:根據split的用法。只有出現.split("這裡的符號");才會分割新的字段出來。而且要注意的是半形跟全形是有區別的 還有中英文的符號也是有區別的--
問題三產生的原因:就是沒有對arrphone 進長度的判斷 arrphone[0]代表的是區號 arrphone[1]代表的是**號碼arrphone[2]代表的是分機號;
(3) 給出修改後的**
// static 要去掉 這邊複製過來的,就不去掉了
2、 請寫一段用於整型陣列排序的**,說明你的設計思路,並利用錯誤推測法給出可能出錯的情況(至少5種),設計出測試用例,並利用junit編寫單元測試進行測試。(假設傳入的引數已經確定為整型陣列)
要求:(1) 寫出**,並符合**規範(命名要規範,不可直接寫在main方法中,需要有類注釋、方法注釋、以及適當的行注釋)
public class test2 ;
//呼叫arr方法
int arg1 =test2.arr(arg);
//輸出經過arr方法換算之後的結果
(2) 說明你的設計思路
設計思路- -寫的注釋就是了。
首先先從使用者端獲取一組陣列。為了方便操作(懶)就設定了乙個預設的陣列;
然後著手寫arr方法也就是陣列排序的方法;
想了一下還是氣泡排序比較方便。所以就用了兩個迴圈來巢狀進行氣泡排序;
第一層迴圈是用來做被比較的物件的;
然後第二層迴圈是用來跟第一層迴圈進行對比的;
然後設定乙個臨時值充當緩衝區來臨時儲存數值;
返回arr陣列;
列印新的陣列;
(3) 寫出可能出錯的情況(至少五種)
原諒我不知道該怎麼寫可能出錯的情況。因為我設定的是預設陣列。出現沒數字的話 就直接報錯
1:輸入的非數字就報錯;(輸入非數字我也執行不了啊- -)
2:陣列元素都一樣
3:實在寫不出來了(要是真的有什麼會錯的早就改了。怎麼可能讓他錯。讓寫**的人查自己的錯誤實在- -找不出來)
(4) 編寫junit單元測試,將前面給出的可能出錯的測試資料放入單元測試進行測試
第三次部落格作業
1 某 管理系統,使用者註冊時,號碼為可選輸入項,輸入格式為 區號 號碼 分機號,中間用 隔開。以下為jsp頁面上的設計,且並未對輸入做任何控制。假設系統現在需要取出中間的 號碼部分,如下 該方法根據使用者輸入取出中間的 號碼部分 param strphonenum 號碼,如 0591 832799...
第三次部落格作業
1 某 管理系統,使用者註冊時,號碼為可選輸入項,輸入格式為 區號 號碼 分機號,中間用 隔開。以下為jsp頁面上的設計,且並未對輸入做任何控制。假設系統現在需要取出中間的 號碼部分,如下 該方法根據使用者輸入取出中間的 號碼部分 param strphonenum 號碼,如 0591 832799...
第三次部落格作業
1 號碼 分機號,中間用 隔開。以下為 jsp頁面上的設計,且並未對輸入做任何控制。假設系統現在需要取出中間的 號碼部分,如下 該方法根據使用者輸入取出中間的 號碼部分 param strphonenum 號碼,如 0591 83279988 002 return 返回號碼部分,如 83279988...