連絡先管理プログラム[ver.3.0]
連絡先マネージャver.3.0データモデル:name、phone、email 機能:連絡先登録、全面検索、詳細検索、連絡先変更、連絡先削除 UI構造: 0.終了|1.登録全文検索|3.詳細検索変更削除アップグレード内容:ArrayList代替アレイ;追加削除機能 配列格納からArrayList格納にデータを変更します.Listを使用しているため、remove()を使用してデータ消去機能を追加しました.
変更されたクラスと関数のみを表示します.異常発生時処理異常. データを永続的に格納します.
変更されたクラスと関数のみを表示します.
public class ContactDAOImple implements ContactDAO{
//사용할 singleton 객체
private static ContactDAOImple instance=null;
private ContactDAOImple() {};
public static ContactDAOImple getInstance() {
if(instance==null) {
instance=new ContactDAOImple();
}
return instance;
}
//전체 연락처를 담고있는 리스트
public static ArrayList<ContactVO> list=new ArrayList<ContactVO>();
@Override //등록-입력된 인스턴스를 저장하고 저장결과 리턴하기
public int insert(ContactVO vo) {
list.add(vo);
return 1;
}
@Override //전체검색-전체리스트를 리턴하기
public ArrayList<ContactVO> select() {
return list;
}
@Override //상세검색-인덱스를 받아서 인덱스의 정보 리턴하기
public ContactVO select(int index) {
return list.get(index);
}
@Override //수정-인덱스를 받아서 입력된 인스턴스 저장하고 저장결과 리턴하기
public int update(int index, ContactVO vo) {
list.set(index, vo);
return 1;
}
@Override //삭제-인덱스를 받아서 저장된 인덱스의 정보 삭제하고 결과 리턴하기
public int delete(int index) {
list.remove(index);
return 1;
}
}
while(run) {
showMainMenu();
int choice=sc.nextInt();
sc.nextLine();
switch (choice) {
case Menu.QUIT:
System.out.println(">>프로그램을 종료합니다.");
run=false;
break;
case Menu.INSERT:
ContactInsert();
break;
case Menu.SELECT_ALL:
ContactSelectAll();
break;
case Menu.SELECT_BY_INDEX:
ContactSelectByIndex();
break;
case Menu.UPDATE:
ContactUpdate();
break;
case Menu.DELETE:
ContactDelete();
break;
default:
System.out.println(">>다시 선택하세요.");
break;
}
}
ArrayList<ContactVO> list=dao.select();
int count=dao.select().size();
固定長の配列はデータの端点を独立したcount変数として検査するが、可変長のListはデータの端点を検査する必要はない.size()を有し、データの端点を知ることができるからである.private static void ContactDelete() {
//삭제할 인덱스를 입력받아 삭제하기
System.out.println();
System.out.println(">>5. 연락처 삭제");
System.out.print("삭제할 연락처 번호 입력>");
int index=sc.nextInt();
sc.nextLine();
int count=dao.select().size();
if(index>=0 && index<count) {
int result=dao.delete(index);
if(result==1) {
System.out.println(">>연락처를 삭제했습니다.");
}else {
System.out.println(">>삭제에 실패했습니다.");
}
}else {
System.out.println(">>없는 연락처입니다.");
}
}//end ContactDelete()
将来の更新Reference
この問題について(連絡先管理プログラム[ver.3.0]), 我々は、より多くの情報をここで見つけました https://velog.io/@yeddoen/연락처-관리-프로그램-ver.3.0テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol