라이브러리를 활용한 애플리케이션 구현

JongseokLee·2021년 7월 27일
0
post-thumbnail

라이브러리를 활용한 애플리케이션 구현 🏆

1. 로또 프로그램 작성하기

1) 로또 프로그램 실행 조건

  • 1 게임당 6개의 정수 값을 난수로 발생
  • 6개의 정수 값은 1에서 45사이의 난수 값
  • 6개의 정수 값은 중복 불가
  • 몇 개의 게임을 할 것인지 선택이 가능해야 함
  • 종료 선택 전까지 계속 반복해야 함

2) 클래스 구성

  • 로또(Lotto) 클래스 : 6개의 난수 값을 가지고 있는 클래스
  • 로또 추첨기(LottoMachine)클래스 : 로또 게임 수에 따라 프로그램 실행 반복

2. 회원관리 프로그램 작성하기

1) 회원관리 프로그램 실행 조건

  • 회원정보(성명, 나이, 전화번호) 관리
  • 회원정보의 추가, 삭제, 검색 기능
  • 회원정보를 파일에 저장 및 불러오기
  • 회원 조건이 있을 때 까지 반복 실행

2) 클래스 구성

  • 회원정보(Member) 클래스 : 성명, 나이, 전화번호를 관리하는 클래스
  • 회원리스트(MemberList) 클래스 : 회원정보 추가, 삭제, 검색, 저장, 불러오기
  • 회원관리 메뉴(MemberMain) 클래스 : 회원관리 메뉴 운영 클래스

3. 실습

1) 회원관리 프로그램에서 수정하기 메뉴(6번)를 추가하시오

package updatemember;

import java.util.Scanner;

public class MemberMain {
	MemberList list;
	Scanner s = new Scanner(System.in);

	public MemberMain() {
		list = new MemberList();
	}
	public void menu() {
		list.listing();
		int select = 0;
		do {
			System.out.print("회원등록(1), 회원삭제(2), 회원검색(3), 불러오기(4), 저장(5), 회원수정(6), 종료(0) : ");
			String input = s.nextLine();
			select = Integer.parseInt(input);
			switch(select) {
			case 0:
				s.close();
				break;
			case 1:
				addMember();
				list.listing();
				break;
			case 2:
				deleteMember();
				list.listing();
				break;
			case 3:
				searchMember();
				break;
			case 4:
				list.readFile();
				list.listing();
				break;
			case 5:
				list.saveFile();
				break;
			case 6:
				updateMember();
				list.listing();
				break;
			}
		} while( select != 0 );
	}
	public void addMember() {
		System.out.print("[이름] : ");
		String name = s.nextLine();
		System.out.print("[나이] : ");
		String age = s.nextLine();
		System.out.print("[전화번호] : ");
		String phone = s.nextLine();
		Member newm = new Member(name, Integer.parseInt(age), phone);
		list.add(newm);
	}
	public void deleteMember() {
		System.out.print("[이름] : ");
		String name = s.nextLine();
		list.delete(name);
	}
	public void searchMember() {
		System.out.print("[이름] : ");
		String name = s.nextLine();
		list.search(name);
	}
	public void updateMember() {
		System.out.print("[이름] : ");
		String name = s.nextLine();
		System.out.print("[나이] : ");
		String age = s.nextLine();
		System.out.print("[전화번호] : ");
		String phone = s.nextLine();
		Member newm = new Member(name, Integer.parseInt(age), phone);
		list.update(newm);
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println("[회원관리 프로그램]");
		MemberMain mm = new MemberMain();
		mm.menu();
	}

}

<Result>

	회원등록(1), 회원삭제(2), 회원검색(3), 불러오기(4), 저장(5), 회원수정(6), 종료(0) : 5

	[저장] : [김장군, 23, 010-2222-3333]

	[저장] : [최공주, 23, 1010-222-2222]

	회원등록(1), 회원삭제(2), 회원검색(3), 불러오기(4), 저장(5), 회원수정(6), 종료(0) : 6

	[이름] : 최공주

	[나이] : 40

	[전화번호] : 010-3333-4444

	[검색] : [최공주, 23, 1010-222-2222]

	---------------------------------------------------

	[김장군, 23, 010-2222-3333]

	[최공주, 40, 010-3333-4444]

	---------------------------------------------------
profile
DataEngineer Lee.

0개의 댓글