【第14、15天】Java SE的第一個練習---通訊錄
1 功能描述
-
(輸入“A”)顯示聯絡人
-
(輸入“a”)按首字母顯示
按照首字母進行顯示分類:
[效果如下:]A 阿磊 15559504275 W 王剛美 18322009876 X 小明 18756789000 Z 張三 15555555555 周凱 18765432189 # -1s 18800050406
-
(輸入“b”)按分組顯示(親人、同事、朋友、其他)
按照類別進行分類顯示:
[效果如下:]朋友 張三 15555555555 小明 18756789000 周樹人 17499990427 張三 15555445555 親人 王剛美 18322009876 周凱 18765432189 同事 阿磊 15559504275 其他 -1s 18800050406
-
(輸入“c”)返回上一頁
-
輸入其他顯示重新輸入
-
-
(輸入“B”)查詢某一位聯絡人
使用者有兩種選擇:使用者可以直接輸入要查詢聯絡人的名字精確查詢,也可以輸入手機號碼段模糊查詢。如果集合裡面沒有該使用者,直接顯示“不好意思,當前使用者不存在”。
如果集合裡面有該使用者 需要將使用者的基本資訊進行展示:[效果如下:] [輸入]張三 [顯示] 使用者的基本資訊: 聯絡人姓名:張三 聯絡人電話:15555555555 聯絡人座機號碼:0531-66617600 使用者的基本資訊: 聯絡人姓名:張三 聯絡人電話:15555445555 聯絡人座機號碼:無座機號碼 [輸入]555555 [顯示] 使用者的基本資訊: 聯絡人姓名:張三 聯絡人電話:15555555555 聯絡人座機號碼:0531-66617600
-
(輸入“C”)新增聯絡人
需要進行輸入校驗:
1.姓名不能出現敏感詞彙
2.性別選擇的不是A/B
3.輸入手機號碼的時候進行校驗是否合法,並判斷手機號碼是否重複
4.輸入的年齡非數字
5.選擇的分類可能不是親人 朋友 同事 其他
6.座機按照區號-號碼的形式傳入
cmd裡面直接出現下面的內容:
請選擇聯絡人的分類A:親人 B:同事 C:朋友 D:其他
請輸入聯絡人名字大寫首字母:
請輸入聯絡人的姓名:
請輸入聯絡人的年齡:
請選擇聯絡人性別:A:男 B:女
請輸入聯絡人的電話:
請輸入聯絡人座機號碼(沒有請回復N):N/區號-座機號
當用戶依次輸入所有的資訊之後,產生一個聯絡人。
如果存在(只要手機號碼相同就認為是同一個聯絡人) ,這個聯絡人存在不能繼續新增進通訊錄裡。cmd裡面顯示:對不起,當前使用者已存在,同一個使用者不能新增多次。
如果不存在,將當前聯絡人新增進集合裡。cmd裡顯示:新增成功。
- (輸入“D”)刪除聯絡人
直接在cmd裡面以表的形式將所有聯絡人的資訊顯示出來。
[效果如下:]
編號 姓名 年齡 電話
0 張三 22 155****5555
1 小明 18 187****9000
2 王剛美 28 183****9876
3 阿磊 24 155****4278
4 周凱 38 187****2189
5 周樹人 99 174****0427
6 張三 22 155****5555
7 -1s 100 188****0406
cmd裡面顯示:請問你要刪除聯絡人的編號:
輸入校驗:
需要對當前輸入的編碼進行判斷,是不是數字。如果不是,需重新輸入,直到輸入的內容符合規定。如果集合裡有該編碼物件的元素,從集合裡將當前編號的聯絡人刪除並在cmd裡面顯示刪除成功。
如果集合裡面沒有該編號對應的聯絡人,cmd裡顯示:對不起,沒有該編碼對應的聯絡人。
- (輸入“E”)修改聯絡人
輸入後還是要進行與新增時相同的校驗。
[效果如下]
請輸入你要修改聯絡人的姓名姓名和聯絡電話(中間-隔開):張三-15555555555
請輸入修改後的聯絡人的姓名姓名和聯絡電話(中間-隔開):李四-18900000000
找到集合裡對應的聯絡人將資訊修改掉,修改完畢顯示修改成功;如果集合裡面沒有找到叫張三的聯絡人,顯示修改失敗,沒有查詢到該聯絡人。
- (輸入“F”)結束當前所有操作
2 聯絡人屬性
char szm;//首字母(使用pinyin4j對聯絡人名字進行轉換獲取)
String name;//聯絡人名字
int age;//聯絡人年齡
char gender;//聯絡人性別
long phone;//手機號碼
String zuoJi;//座機號碼(可選項)
3 下載地址
Java SE的第一個練習—通訊錄 ,如果沒有積分也可以在評論留郵箱,我給你發。