본문 바로가기
DEV/JAVA

[JAVA] 전화번호북

by JJHstack 2022. 10. 11.
728x90
반응형

[ Phone ] Class 코드

public class Phone {
	private String name;
	private String tel;
	private String add;
	

	public Phone(String name, String tel, String add) {
		this.name=name;
		this.tel=tel;
		this.add=add;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getTel() {
		return tel;
	}
	public String getAdd() {
		return add;
	}
	public void setTel(String tel) {
		this.tel = tel;
	}
}

[ PhoneBook ] Class 코드

import java.util.Scanner;
public class PhoneBook {
	private Scanner sc;
	private Phone pArray[];
	
	//묵시적 생성자
	public PhoneBook() {
		sc = new Scanner(System.in);
	}	
	void read() {
		System.out.println("인원수 >> ");
		int n = sc.nextInt();
		pArray = new Phone[n];
		
		for(int i=0; i<pArray.length; i++) {
			System.out.println("이름과 전화 번호, 주소를 빈 칸 없이 입력하세요.");
			System.out.println("예) 아무개 010-7777-7777 서울특별시주소주소");
			String name = sc.next();
			String tel = sc.next();
			String add = sc.next();
			pArray[i] = new Phone(name, tel, add);
		}
		System.out.println("저장이 완료 되었습니다.");
	}
	String searchTel(String name) {
		for(int i=0; i<pArray.length; i++) {
			if(pArray[i].getName().equals(name))
				return pArray[i].getTel();
		}
		return null;
	}
	String searchAdd(String name) {
		for(int i=0; i<pArray.length; i++) {
			if(pArray[i].getName().equals(name))
				return pArray[i].getAdd();
		}
		return null;
	}
	void run() {
		read();
		while(true) {
			System.out.println("검색할 이름 >> ");
			String name = sc.next();
			
			if(name.equals("그만")) {
				break;
			}
			String tel = searchTel(name);
			String add = searchAdd(name);
			
			if(tel == null)
				System.out.println(name + "이 존재하지 않습니다.");
			else
				System.out.println(name + "의 전화번호는 " + tel + " 주소는 " + add + "입니다.");
		}
	}	
	public static void main(String[] args) {
		//PhoneBook pb = new PhoneBook();
		//pb.run();
		new PhoneBook().run();
	}
}

 

결과

728x90
반응형

'DEV > JAVA' 카테고리의 다른 글

[JAVA] 상속과 생성자  (0) 2022.10.12
[JAVA] 상속 extends  (0) 2022.10.11
[JAVA] 일정관리 프로그램  (0) 2022.10.11
[JAVA] 단어사전  (0) 2022.10.11
[JAVA] 계산기  (0) 2022.10.11

댓글