반응형

 

문제

 

package kr.or.ddit.homework;

import java.util.Scanner;

public class HomeWork10 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		HomeWork10 obj = new HomeWork10();
		obj.process();
	}
	
	public void process() {
		Member[] memList = new Member[10];
		int cur = 0;
		while(true) {
			/*
			 *  스캐너를 통해 
			 *  나라, 지역, 이름을 입력 받기 
			 *  
			 *  지역이 대전이라면 파라미터 2개 생성자  
			 *  아니라면 3개 생성자 호출하기.
			 */
			Member mem = null;
			if(?) {
				
			}else {
				
			}
			memList[cur++]=mem;
		}
	}
	
}
class Member{
	/*
	 *  나라 
	 *  지역 
	 *  이름
	 */
}

 

 

 

정답

 

package kr.or.ddit.homework;

import java.util.Scanner;

public class HomeWork10 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		HomeWork10 obj = new HomeWork10();
		obj.process();
	}
	
	public void process() {
		Member[] memList = new Member[10];
		int cur = 0;
		while(true) {
			/*
			 *  스캐너를 통해 
			 *  
			 *  지역이 대전이라면 파라미터 나라, 지역이 기본값
			 *  			생성자 name 파라미터만 호출  
			 *  아니라면 		지역, name 파라미터 2개 생성자 호출하기.
			 */
			
			/*
			 * 1. 멤버추가
			 * 2. 종료 
			 */
			System.out.println("1.멤버추가");
			System.out.println("2.종료");
			String input = sc.nextLine();
			
			Member mem = null;
			if(input.equals("1")) {
				System.out.println("지역을 입력하세요.");
				String region = sc.nextLine();
				System.out.println("이름을 입력하세요.");
				String name = sc.nextLine();
				
				if(region.equals("대전")) {
					mem = new Member(name);
				}else {
					mem = new Member(region, name);
				}
				memList[cur++]=mem;
			}else {
				System.out.println("종료 되었습니다.");
				break;
			}
		}
		
		for(int i=0; i<cur; i++) {
			System.out.println(memList[i]);
		}
	}
	
}

class Member{
	/*
	 *  나라 
	 *  지역 
	 *  이름
	 */
	String country; // 한국
	String region; // 대전
	String name;
	
	Member(String name) {
//		this.country = "한국";
//		this.region = "대전";
//		this.name = name;
		this("대전", name);
	}
	
	Member(String region, String name) {
		this.country = "한국";
		this.region = region;
		this.name = name;
	}

	@Override
	public String toString() {
		return "멤버 [나라=" + country + ", 지역=" + region + ", 이름=" + name + "]";
	}
}

 

결과 화면1

 

 

반응형

'자바' 카테고리의 다른 글

[Java 초급] 13.5.2장 테스트2  (0) 2023.12.19
[Java 초급] 14장 String 메소드 종류  (2) 2023.12.19
[Java 초급] 13장 클래스  (0) 2023.12.15
[Java 초급] 11.5장 테스트  (0) 2023.12.13
[Java 초급] 12장 배열 복사  (0) 2023.12.13