[Java 소스] 회원 관리 프로그램 (Vector 클래스 이용)
//Member.java
//회원 클래스
public class Member {
final int num;
String name;
public Member(int num, String name){
this.num = num;
this.name = name;
}
public int getNum(){
return num;
}
public String toString(){
return String.format("번호:%d 이름:%s", num,name);
}
}
//MemberManager.java
//회원 관리자 클래스
import java.util.Vector;
import java.util.Scanner;
public class MemberManager {
Scanner scan = new Scanner(System.in);
Vector<Member> members = new Vector<Member>();
public void Run(){
int key = 0;
while((key = selectMenu())!=0){
switch(key){
case 1: addMember(); break;
case 2: removeMember(); break;
case 3: searchMember(); break;
case 4: listMember(); break;
default: System.out.println("잘못 선택하였습니다."); break;
}
}
System.out.println("종료합니다...");
}
int selectMenu(){
System.out.println("1:추가 2:삭제 3:검색 4:목록 0:종료");
int key = scan.nextInt();
scan.nextLine();
return key;
}
void addMember(){
int num = 0;
String name="";
System.out.print("추가할 회원 번호:");
num = scan.nextInt();
scan.nextLine();
System.out.print("회원 이름:");
name = scan.nextLine();
Member member =new Member(num,name);
members.add(member);
System.out.println(member.toString()+" 생성하였습니다.");
}
void removeMember(){
int num = 0;
System.out.print("삭제할 회원 번호:");
num = scan.nextInt();
scan.nextLine();
Member member = Find(num);
if(member == null){
System.out.println("존재하지 않습니다.");
return;
}
members.remove(member);
System.out.println(member.toString()+" 삭제하였습니다.");
}
void searchMember(){
int num = 0;
System.out.print("검색할 회원 번호:");
num = scan.nextInt();
scan.nextLine();
Member member = Find(num);
if(member == null){
System.out.println("존재하지 않습니다.");
return;
}
System.out.println("검색 결과>>"+member.toString());
}
void listMember(){
System.out.println("전체 목록");
int cnt = members.size();
System.out.println("회원 수:"+cnt);
for(Member member : members){
System.out.println(member.toString());
}
}
Member Find(int num){
int cnt = members.size();
for(Member member : members){
if(member.getNum() == num){
return member;
}
}
return null;
}
}//Program.java
//Vector 클래스로 Collection 인터페이스 약속한 기능 사용 예
public class Program {
public static void main(String[] args){
MemberManager mm = new MemberManager();
mm.Run();
}
}실행 결과
1:추가 2:삭제 3:검색 4:목록 0:종료
1
추가할 회원 번호:3
회원 이름:홍길동
번호:3 이름:홍길동 생성하였습니다.
1:추가 2:삭제 3:검색 4:목록 0:종료
1
추가할 회원 번호:2
회원 이름:강감찬
번호:2 이름:강감찬 생성하였습니다.
1:추가 2:삭제 3:검색 4:목록 0:종료
4
전체 목록
회원 수:2
번호:3 이름:홍길동
번호:2 이름:강감찬
1:추가 2:삭제 3:검색 4:목록 0:종료
3
검색할 회원 번호:2
검색 결과>>번호:2 이름:강감찬
1:추가 2:삭제 3:검색 4:목록 0:종료
2
삭제할 회원 번호:2
번호:2 이름:강감찬 삭제하였습니다.
1:추가 2:삭제 3:검색 4:목록 0:종료
4
전체 목록
회원 수:1
번호:3 이름:홍길동
1:추가 2:삭제 3:검색 4:목록 0:종료
0
종료합니다...
본문
'Java > 디딤돌 Java 언어 Part2' 카테고리의 다른 글
[Java 소스] Comparable 인터페이스로 한정한 제네릭 메서드 Sort (0) | 2017.01.21 |
---|---|
[Java 소스] 제네릭 메서드 (0) | 2017.01.20 |
[Java 소스] 정수 동적 배열, 제네릭 동적 배열 (0) | 2017.01.20 |
[Java 소스] 사용자 정의 예외 클래스 (0) | 2017.01.20 |
[Java 소스] finally 문 사용 예 (0) | 2017.01.19 |