재밌고 어려운 IT를 이해해보자~!

this 예약어, 로그출력, 클래스와 배열의 활용 본문

코리아IT핀테크과정

this 예약어, 로그출력, 클래스와 배열의 활용

언제나즐거운IT 2023. 12. 1. 01:42

this 예약어

자바의 this 예역어는 파이선 self와 비슷하다.

this.x 는 멤버변수의 x를 뜻한다. 이클립스에서보면 멤버변수와 같은 색을 가진것을 확인 할 수 있다.
모든 멤버변수앞에는 반드시 this를 붙이자 ! 그이유는this를 안붙여도 되긴 하지만, 전체 스코프를 참조해서 자바가 알아서 찾아내기 때문에 느리다.
이 this를 사용해서 생성자도 재사용이 가능하다.

다음 코드를 보자.

package class02;

class Point {
	int x;
	int y;

	Point() {
		//System.out.println(" 로그"); --> 멤버변수 초기화가 안되었는데 뭔가 하면 안된다.
		// 초기화하는코드가 제일 먼저다!!!!
		this(0,0);
		System.out.println(" 로그1");
	}

	Point(int x) {
		this(x,x); // this()는 생성자를 의미한다. 2개의 메게변수를 가진 생성자 호출!!!!
		System.out.println(" 로그2");
	}

	Point(int x, int y) { //인자 가장많은 생성자부터 생성
		this.x =x;
		this.y =y; 
		System.out.println(" 로그3");
	}
	void printInfo() {
		System.out.println("점 ("+this.x+","+this.y+")입니다.");
	}
	
	void move(int x) {
		this.x+=x;
		this.y+=x;
	}
}

public class Test01 {

	public static void main(String[] args) {

		Point point01 = new Point(); // (0,0)
		System.out.println(" 로그4");
		Point point02 = new Point(10); // (10,10)
		System.out.println(" 로그5");
		Point point03 = new Point(1, 2); // (1,2)
		System.out.println(" 로그6");
		
		point03.move(10);
	
		point01.printInfo();
		point02.printInfo();
		point03.printInfo();
	}

}

매게변수가 가장많은 생성자를 기준으로 나머지 생성자들은 this예약어를 통해서 편하게 입력 할 수 있다.

생성자를 통해 멤버변수가 초기화가 되지 않은상태로 뭔가 작성하려고하면 에러가난다. 

따라서 생성자에서 멤버변수 초기화를 시킨 후에 뭔가 작성하도록 하자.

또한 중간중간 보면 로그를 출력하도록 되어있는데, 코드가 이상하게 작동할때 중간중간 로그를 출력해서

원하는 라인을 읽어들이고 있는지, 어디서 문제가 생기는지를 확인 할 수있다. 자주 사용하도록 하자.

 

내가만든 클래스 타입 배열에 객체를 넣는방법 2가지!

 Person[] datas=new Person[3];
      
      Person person=new Person("0번인덱스");
      datas[0]=person;
      // 1) 사람객체를 미리 생성한 다음 저장
      
      datas[1]=new Person("1번인덱스");
      // 2) 저장할때에 사람객체를 생성 ◁

보통 후자를 많이 사용한다고 한다.

 

Static 키워드

각각의 객체마다 다른값인가? -> 멤버변수(속성)  각각의 객체마다 다 같은값 -> static 클래스 소속 이다.

어떠한 클래스의 모든 객체가 다 동일한 멤버변수값을 가질때에 우리는 그 멤버변수를 공유자원이라고 하며 객체와 무관하므로 static을 붙이고 static이 붙은건 더이상 멤버변수가 아니다..그러므로 멤버변수를 초기화하는 생성자에서 초기화 X
클래스에서 초기화!. 따라서 Static 변수를 사용하려면 클래스 멤버접근연산자를 사용해서 접근한다.

 

Final 키워드

변수가 아닌 상수 PI=3.14 처럼 항상 고정값이다.

package class02;

class Circle {
	double area;
	// 각각의 객체마다 다른값인가? -> 멤버변수(속성)  각각의 객체마다 다 같은값 -> static 클래스 소속 
	// 어떠한 클래스의 모든 객체가 다 동일한 멤버변수값을 가질때에 우리는 그 멤버변수를 공유자원이라고 하며 객체와 무관하므로 static을 붙임
	// static이 붙은건 더이상 멤버변수가 아니다...
	// 그러므로 멤버변수를 초기화하는 생성자에서 초기화 X
	// 클래스에서 초기화
	// 멤버변수가 아니게 됨으로 PI 에 this는 안붙인다.
	static final double PI= 3.14; // 불변하는 변수는 전부 대문자로 바꾸기... -> 상수
	// 멤버변수는 객체 (Instacne) 소속 
	// 모든 원이라면 전부다 3.14
	// 이러한 멤버변수를 공유자원 이라고 한다.
	// 객체와 무관하게 
	//int radius; ? 필요한가용 도 멤버변수로 받자!!!!!
	int radius;
	String name;
	
	Circle () {
		
	}
	Circle (String name) {
		this(name,1);
			
		}
	
	Circle(int radius) {
	this("원", radius);
	}
	
	Circle(String name, int radius) {
	this.name = name;
	this.area = radius * radius * Circle.PI; //-> this.radius 로 바꾸고 PI는 클래스 소속이기 때문에 CirCle.PI
		
	}
	//메서드는 보통 생성자 다음에 선언
	void printInfo() {
		//항상 thio 붙이기.
		System.out.println(this.name+"는(은) 넓이가 "+area+"입니다.");
	}
	
	
	void changeRadius(int radius) {
		this.radius =radius;
		this.area=this.radius*this.radius*Circle.PI;
	}
}

class ColorPoint {
	int x;
	int y;
	String color;
	
	ColorPoint() {
		this(0,0); // 인자가 없을때 인자 2개만 입력해도 44번 라인으로 넘어가서 defualt값을 줄 수 있다.
		//하드코딩 최소화!!!
		}
	
	ColorPoint(String color) {
		this(color,0,0);
	}
	ColorPoint(int x, int y) {
		this("검정",x,y);
	}
	
	ColorPoint(String color,int  x,int y) {
		this.color = color;
		this.x = x;
		this.y = y;
	}
	
	void printInfo() {
		System.out.println(this.color+"색 점은 ("+this.x+","+this.y+")에 있습니다.");
	}
	
	void changeColor(String color) {
		this.color = color;
	}
	
	void move(int x,int y){
		this.x+=x;
		this.y+=y;
	}
}


public class Test03 {
	public static void main(String[] args) {
		ColorPoint cp1 = new ColorPoint();
		ColorPoint cp2 = new ColorPoint(1,2);
		ColorPoint cp3 = new ColorPoint("분홍");
		ColorPoint cp4 = new ColorPoint("빨강",3,5) ;
	
		cp1.move(10, 5);
		cp1.changeColor("빨강");
		
		
		cp1.printInfo();
		cp2.printInfo();
		cp3.printInfo();
		cp4.printInfo();
		
		
		System.out.println();
		System.out.println();
		
		Circle c1 = new Circle(10);
		Circle c2 = new Circle("도넛");
		Circle c3 = new Circle("피자",12);
		Circle c4 = new Circle();
		
		c1.changeRadius(33);
		
		c1.printInfo();
		c2.printInfo();

		System.out.println();
		System.out.println();
		
		ColorPoint[] cpArr = new ColorPoint[5];
		
		for (int i=0; i<cpArr.length; i++) {
			cpArr[i] = new ColorPoint(i,(i+3));
		}
		for (ColorPoint datas : cpArr) {
			datas.printInfo();
		}

		
	}
}

 

[ 문 제 ]
포켓몬 클래스가 있습니다.
이름과 레벨(int)과 경험치(int)가 있습니다.
시스템 설명) 경험치가 100이 되면 경험치 0으로 변경되고
   레벨이 1오릅니다.
 ex) 경험치가 10 ---+100-->> 110 -> 10
            레벨++
   경험치 100당 레벨 1
포켓몬을 만들때에는,,,
포켓몬 피카츄1=new 포켓몬("피카츄");
   => 피카츄 Lv.5 [0/100]
포켓몬 피카츄2=new 포켓몬("피카츄",10);
   => 피카츄 Lv.10 [0/100]
피카츄1.printInfo();
   => 피카츄 Lv.5 [0/100] 입니다.
------------------------------------------------------------------
피카츄1.game();
   50%의 확률로 게임을 성공할수있습니다.
   게임 실패시 아무일도없습니다... 출력
   게임 성공시 경험치를 획득! 출력
      경험치는 50~500까지 랜덤하게 얻을수있습니다.
      경험치 획득으로 인해 레벨이 올라간다면
         피카츄, 레벨업 ! 을 출력해주세요.

 

포켓몬게임!

package class02;

import java.util.Random;
import java.util.Scanner;

class Pokemon {
	static String titlePic="                                 ,'\\\r\n"
			+ "    _.----.        ____         ,'  _\\   ___    ___     ____\r\n"
			+ "_,-'       `.     |    |  /`.   \\,-'    |   \\  /   |   |    \\  |`.\r\n"
			+ "\\      __    \\    '-.  | /   `.  ___    |    \\/    |   '-.   \\ |  |\r\n"
			+ " \\.    \\ \\   |  __  |  |/    ,','_  `.  |          | __  |    \\|  |\r\n"
			+ "   \\    \\/   /,' _`.|      ,' / / / /   |          ,' _`.|     |  |\r\n"
			+ "    \\     ,-'/  /   \\    ,'   | \\/ / ,`.|         /  /   \\  |     |\r\n"
			+ "     \\    \\ |   \\_/  |   `-.  \\    `'  /|  |    ||   \\_/  | |\\    |\r\n"
			+ "      \\    \\ \\      /       `-.`.___,-' |  |\\  /| \\      /  | |   |\r\n"
			+ "       \\    \\ `.__,'|  |`-._    `|      |__| \\/ |  `.__,'|  | |   |\r\n"
			+ "        \\_.-'       |__|    `-._ |              '-.|     '-.| |   |\r\n"
			+ "                                `'                            '-._|";
	
	static String picachuPic="⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣾⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣾⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡾⠋⠉⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⠃⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⢀⡏⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⢸⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣠⣤⣤⣤⣤⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⡏⠀⠀⠀⠀⢸⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⡤⠴⠒⠊⠉⠉⠀⠀⣿⣿⣿⠿⠋⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⢀⡠⠼⠴⠒⠒⠒⠒⠦⠤⠤⣄⣀⠀⢀⣠⠴⠚⠉⠀⠀⠀⠀⠀⠀⠀⠀⣼⠿⠋⠁⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⣇⠔⠂⠈⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢨⠿⠋⠀⠀⠀⠀⠀⠀⠀⠀⣀⡤⠖⠋⠁⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⢰⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⠤⠒⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⢀⡟⠀⣠⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⢻⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣤⣤⡤⠤⢴\r\n"
			+ "⠀⠀⠀⠀⠀⠀⣸⠁⣾⣿⣀⣽⡆⠀⠀⠀⠀⠀⠀⠀⢠⣾⠉⢿⣦⠀⠀⠀⢸⡀⠀⠀⢀⣠⠤⠔⠒⠋⠉⠉⠀⠀⠀⠀⢀⡞\r\n"
			+ "⠀⠀⠀⠀⠀⢀⡏⠀⠹⠿⠿⠟⠁⠀⠰⠦⠀⠀⠀⠀⠸⣿⣿⣿⡿⠀⠀⠀⢘⡧⠖⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡼⠀\r\n"
			+ "⠀⠀⠀⠀⠀⣼⠦⣄⠀⠀⢠⣀⣀⣴⠟⠶⣄⡀⠀⠀⡀⠀⠉⠁⠀⠀⠀⠀⢸⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⠁⠀\r\n"
			+ "⠀⠀⠀⠀⢰⡇⠀⠈⡇⠀⠀⠸⡾⠁⠀⠀⠀⠉⠉⡏⠀⠀⠀⣠⠖⠉⠓⢤⢸⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⠃⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⢧⣀⡼⠃⠀⠀⠀⢧⠀⠀⠀⠀⠀⢸⠃⠀⠀⠀⣧⠀⠀⠀⣸⢹⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡰⠃⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠈⢧⡀⠀⠀⠀⠀⠘⣆⠀⠀⠀⢠⠏⠀⠀⠀⠀⠈⠳⠤⠖⠃⡟⠀⠀⠀⢾⠛⠛⠛⠛⠛⠛⠛⠛⠁⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠙⣆⠀⠀⠀⠀⠈⠦⣀⡴⠋⠀⠀⠀⠀⠀⠀⠀⠀⢀⣼⠙⢦⠀⠀⠘⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⢠⡇⠙⠦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⠴⠋⠸⡇⠈⢳⡀⠀⢹⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⡼⣀⠀⠀⠈⠙⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠀⠀⠀⠀⣷⠴⠚⠁⠀⣀⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⡴⠁⡏⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣆⡴⠚⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⣼⢷⡆⠀⣠⡴⠧⣄⣇⠀⠀⠀⠀⠀⠀⠀⢲⠀⡟⠀⠀⠀⠀⠀⠀⠀⢀⡇⣠⣽⢦⣄⢀⣴⣶⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⡿⣼⣽⡞⠁⠀⠀⠀⢹⡀⠀⠀⠀⠀⠀⠀⠈⣷⠃⠀⠀⠀⠀⠀⠀⠀⣼⠉⠁⠀⠀⢠⢟⣿⣿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⣷⠉⠁⢳⠀⠀⠀⠀⠈⣧⠀⠀⠀⠀⠀⠀⠀⣻⠀⠀⠀⠀⠀⠀⠀⣰⠃⠀⠀⠀⠀⠏⠀⠀⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠹⡆⠀⠈⡇⠀⠀⠀⠀⠘⣆⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⣰⠃⠀⠀⠀⠀⠀⠀⠀⣸⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⢳⡀⠀⠙⠀⠀⠀⠀⠀⠘⣆⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⣰⠃⠀⠀⠀⠀⢀⡄⠀⢠⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⢳⡀⣰⣀⣀⣀⠀⠀⠀⠘⣦⣀⠀⠀⠀⡇⠀⠀⠀⢀⡴⠃⠀⠀⠀⠀⠀⢸⡇⢠⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠉⠉⠀⠀⠈⠉⠉⠉⠙⠻⠿⠾⠾⠻⠓⢦⠦⡶⡶⠿⠛⠛⠓⠒⠒⠚⠛⠛⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀";
	
	static String raichuPic="⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⠀⠀⠀⠀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⣿⣿⣷⡀⠀⠀⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣿⣿⣿⣄⠀⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢻⣿⣿⣆⢸⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣶⣤⣙⣿⣿⣾⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠛⠻⣿⣿⡿⠿⠿⠿⠿⠗⠶⠶⠶⠤⢤⣄⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⡴⠖⠋⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠓⠦⣤⣤⢤⡞⢦⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⠞⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⢦⡀⠈⢧⡀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⢀⣄⢀⣴⡟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣦⠀⠱⣄⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⣾⠈⠉⠀⠻⡷⠀⠀⣠⠖⠚⠉⠉⠉⠉⠓⢦⡀⠀⠀⠀⠀⠀⡤⠚⠉⠉⠉⠉⠑⠢⣄⠀⠈⢧⠀⠈⢳⡀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⢰⠇⠀⠀⠀⠀⡇⢠⡞⠀⠀⠀⠀⢀⡀⠀⠀⠀⢹⠀⠀⠀⠀⢸⠁⠀⠀⡤⠀⠀⠀⠀⠈⣇⠀⠸⡆⠀⠀⢻⡄⠀\r\n"
			+ "⠀⠀⠀⠀⢠⡏⠀⠀⠀⠀⠀⡇⠸⡇⠀⠀⠀⠀⠀⠀⠀⠀⢀⡞⠀⠀⠀⠀⠈⠣⣀⠀⠀⠀⠀⠀⠀⣠⠇⠀⠀⡇⠀⠀⠀⢿⠀\r\n"
			+ "⠀⠀⠀⢀⡞⠀⠀⠀⠀⠀⠀⡇⠀⠙⠲⢤⣀⣀⣀⣀⠤⠖⠋⠀⣀⡴⠚⠓⠢⣄⡈⠙⠒⠒⠒⠒⠋⠁⠀⠀⢸⠃⠀⠀⠀⢸⡆\r\n"
			+ "⠀⠀⠀⣼⠁⠀⠀⠀⠀⠀⠀⣿⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⠴⠚⢥⡀⠀⠀⠀⡀⠙⠓⠒⠶⠦⢤⡄⠀⠀⣠⡏⠀⠀⠀⠀⢸⡇\r\n"
			+ "⠀⠀⢰⡇⠀⠀⠀⠀⠀⠀⠀⢻⠀⠀⢀⣤⠶⠒⠚⠋⠉⠁⠀⠀⠀⠁⠀⠀⠈⠀⠀⠀⠀⠀⠀⠀⣇⢀⡴⠋⠀⠀⠀⠀⠀⣸⠃\r\n"
			+ "⠀⠀⢸⠃⠀⠀⠀⠀⠀⠀⠀⢸⣧⡀⠀⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠻⣄⠀⠀⠀⠀⠀⢀⡟⠀\r\n"
			+ "⠀⠀⢸⠀⠀⠀⠀⠀⠀⠀⠀⠘⡏⠉⠳⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠳⡄⠀⠀⢀⡾⠁⠀\r\n"
			+ "⠀⠀⢸⡀⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡀⣠⠞⠀⠀⠀\r\n"
			+ "⠀⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⢠⡇⠀⠸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡿⢻⡏⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⢻⡀⠀⠀⠀⠀⠀⢀⡾⠁⠀⠀⠹⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⠟⠁⠀⢷⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠙⠦⣤⣄⣀⠀⠘⠁⠀⠀⠀⠀⠀⠙⠲⠦⣤⣄⣀⣀⠀⠀⠀⠀⠀⠀⠀⣀⣀⣀⣤⠴⠚⠉⠀⠀⠀⠀⠈⣇⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⢸⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⡀⠀⠀\r\n"
			+ "⣠⣀⣀⠀⠀⠀⢸⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⡇⠀⠀\r\n"
			+ "⢳⡀⠈⠙⠲⢤⣼⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⠇⠀⠀\r\n"
			+ "⠀⠙⢦⡀⠀⠀⠘⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡿⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠙⠶⣄⡀⠈⢷⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⡾⠁⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠈⠙⠲⢤⣹⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡴⠋⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠙⣳⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⢾⡋⠀⠀⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡴⠊⠁⠀⠈⠙⠲⠦⣤⣄⣀⣀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⣤⠴⠖⠛⠉⠀⠀⠉⠳⣄⠀⠀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⢀⡔⠁⠀⠀⢀⠀⠀⠀⠀⢀⠀⠀⠈⢻⠉⠉⠉⠉⠉⠉⢹⠉⠉⠀⠀⡀⠀⠀⠀⠀⢠⡀⠀⠈⢧⡀⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠟⠒⠒⠒⠛⠙⣄⠀⣀⡴⠛⠳⢤⣀⡀⣧⠀⠀⠀⠀⠀⢸⡀⣀⣠⠴⠛⠦⣄⠀⢀⡏⠉⠙⠒⠶⠇⠀⠀⠀\r\n"
			+ "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠛⠁⠀⠀⠀⠀⠀⠉⠉⠀⠀⠀⠀⠀⠈⠉⠁⠀⠀⠀⠀⠈⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀";
	
	static String pyriPic="              _.--\"\"`-..\r\n" + "            ,'          `.\r\n"
			+ "          ,'          __  `.\r\n" + "         /|          \" __   \\\r\n"
			+ "        , |           / |.   .\r\n" + "        |,'          !_.'|   |\r\n"
			+ "      ,'             '   |   |\r\n" + "     /              |`--'|   |\r\n"
			+ "    |                `---'   |\r\n"
			+ "     .   ,                   |                       ,\".\r\n"
			+ "      ._     '           _'  |                    , ' \\ `\r\n"
			+ "  `.. `.`-...___,...---\"\"    |       __,.        ,`\"   L,|\r\n"
			+ "  |, `- .`._        _,-,.'   .  __.-'-. /        .   ,    \\\r\n"
			+ "-:..     `. `-..--_.,.<       `\"      / `.        `-/ |   .\r\n"
			+ "  `,         \"\"\"\"'     `.              ,'         |   |  ',,\r\n"
			+ "    `.      '            '            /          '    |'. |/\r\n"
			+ "      `.   |              \\       _,-'           |       ''\r\n"
			+ "        `._'               \\   '\"\\                .      |\r\n"
			+ "           |                '     \\                `._  ,'\r\n"
			+ "           |                 '     \\                 .'|\r\n"
			+ "           |                 .      \\                | |\r\n"
			+ "           |                 |       L              ,' |\r\n"
			+ "           `                 |       |             /   '\r\n"
			+ "            \\                |       |           ,'   /\r\n"
			+ "          ,' \\               |  _.._ ,-..___,..-'    ,'\r\n"
			+ "         /     .             .      `!             ,j'\r\n"
			+ "        /       `.          /        .           .'/\r\n"
			+ "       .          `.       /         |        _.'.'\r\n"
			+ "        `.          7`'---'          |------\"'_.'\r\n"
			+ "       _,.`,_     _'                ,''-----\"'\r\n"
			+ "   _,-_    '       `.     .'      ,\\\r\n"
			+ "   -\" /`.         _,'     | _  _  _.|\r\n"
			+ "    \"\"--'---\"\"\"\"\"'        `' '! |! /\r\n"
			+ "                            `\" \" -' ";
	
	static String rezardPic="                      ,-'`\\\r\n"
			+ "                  _,\"'    j\r\n"
			+ "           __....+       /               .\r\n"
			+ "       ,-'\"             /               ; `-._.'.\r\n"
			+ "      /                (              ,'       .'\r\n"
			+ "     |            _.    \\             \\   ---._ `-.\r\n"
			+ "     ,|    ,   _.'  Y    \\             `- ,'   \\   `.`.\r\n"
			+ "     l'    \\ ,'._,\\ `.    .              /       ,--. l\r\n"
			+ "  .,-        `._  |  |    |              \\       _   l .\r\n"
			+ " /              `\"--'    /              .'       ``. |  )\r\n"
			+ ".\\    ,                 |                .        \\ `. '\r\n"
			+ "`.                .     |                '._  __   ;. \\'\r\n"
			+ "  `-..--------...'       \\                  `'  `-\"'.  \\\r\n"
			+ "      `......___          `._                        |  \\\r\n"
			+ "               /`            `..                     |   .\r\n"
			+ "              /|                `-.                  |    L\r\n"
			+ "             / |               \\   `._               .    |\r\n"
			+ "           ,'  |,-\"-.   .       .     `.            /     |\r\n"
			+ "         ,'    |     '   \\      |       `.         /      |\r\n"
			+ "       ,'     /|       \\  .     |         .       /       |\r\n"
			+ "     ,'      / |        \\  .    +          \\    ,'       .'\r\n"
			+ "    .       .  |         \\ |     \\          \\_,'        / j\r\n"
			+ "    |       |  L          `|      .          `        ,' '\r\n"
			+ "    |    _. |   \\          /      |           .     .' ,'\r\n"
			+ "    |   /  `|    \\        .       |  /        |   ,' .'\r\n"
			+ "    |   ,-..\\     -.     ,        | /         |,.' ,'\r\n"
			+ "    `. |___,`    /  `.   /`.       '          |  .'\r\n"
			+ "      '-`-'     j     ` /.\"7-..../|          ,`-'\r\n"
			+ "                |        .'  / _/_|          .\r\n"
			+ "                `,       `\"'/\"'    \\          `.\r\n"
			+ "                  `,       '.       `.         |\r\n"
			+ "             __,.-'         `.        \\'       |\r\n"
			+ "            /_,-'\\          ,'        |        _.\r\n"
			+ "             |___.---.   ,-'        .-':,-\"`\\,' .\r\n"
			+ "                  L,.--\"'           '-' |  ,' `-.\\\r\n"
			+ "                                        `.'";
	
	static String rezamongPic="                 .\"-,.__\r\n"
			+ "                 `.     `.  ,\r\n"
			+ "              .--'  .._,'\"-' `.\r\n"
			+ "             .    .'         `'\r\n"
			+ "             `.   /          ,'\r\n"
			+ "               `  '--.   ,-\"'\r\n"
			+ "                `\"`   |  \\\r\n"
			+ "                   -. \\, |\r\n"
			+ "                    `--Y.'      ___.\r\n"
			+ "                         \\     L._, \\\r\n"
			+ "               _.,        `.   <  <\\                _\r\n"
			+ "             ,' '           `, `.   | \\            ( `\r\n"
			+ "          ../, `.            `  |    .\\`.           \\ \\_\r\n"
			+ "         ,' ,..  .           _.,'    ||\\l            )  '\".\r\n"
			+ "        , ,'   \\           ,'.-.`-._,'  |           .  _._`.\r\n"
			+ "      ,' /      \\ \\        `' ' `--/   | \\          / /   ..\\\r\n"
			+ "    .'  /        \\ .         |\\__ - _ ,'` `        / /     `.`.\r\n"
			+ "    |  '          ..         `-...-\"  |  `-'      / /        . `.\r\n"
			+ "    | /           |L__           |    |          / /          `. `.\r\n"
			+ "   , /            .   .          |    |         / /             ` `\r\n"
			+ "  / /          ,. ,`._ `-_       |    |  _   ,-' /               ` \\\r\n"
			+ " / .           \\\"`_/. `-_ \\_,.  ,'    +-' `-'  _,        ..,-.    \\`.\r\n"
			+ ".  '         .-f    ,'   `    '.       \\__.---'     _   .'   '     \\ \\\r\n"
			+ "' /          `.'    l     .' /          \\..      ,_|/   `.  ,'`     L`\r\n"
			+ "|'      _.-\"\"` `.    \\ _,'  `            \\ `.___`.'\"`-.  , |   |    | \\\r\n"
			+ "||    ,'      `. `.   '       _,...._        `  |    `/ '  |   '     .|\r\n"
			+ "||  ,'          `. ;.,.---' ,'       `.   `.. `-'  .-' /_ .'    ;_   ||\r\n"
			+ "|| '              V      / /           `   | `   ,'   ,' '.    !  `. ||\r\n"
			+ "||/            _,-------7 '              . |  `-'    l         /    `||\r\n"
			+ ". |          ,' .-   ,' ||               | .-.        `.      .'     ||\r\n"
			+ " `'        ,'    `\".'    |               |    `.        '. -.'       `'\r\n"
			+ "          /      ,'      |               |,'    \\-.._,.'/'\r\n"
			+ "          .     /        .               .       \\    .''\r\n"
			+ "        .`.    |         `.             /         :_,'.'\r\n"
			+ "          \\ `...\\   _     ,'-.        .'         /_.-'\r\n"
			+ "           `-.__ `,  `'   .  _.>----''.  _  __  /\r\n"
			+ "                .'        /\"'          |  \"'   '_\r\n"
			+ "               /_|.-'\\ ,\".             '.'`__'-( \\\r\n"
			+ "                 / ,\"'\"\\,'               `/  `-.|\"";
			
	static String ggobugiPic="               _,........__\r\n" + "            ,-'            \"`-.\r\n"
			+ "          ,'                   `-.\r\n" + "        ,'                        \\\r\n"
			+ "      ,'                           .\r\n"
			+ "      .'\\               ,\"\".       `\r\n"
			+ "     ._.'|             / |  `       \\\r\n"
			+ "     |   |            `-.'  ||       `.\r\n"
			+ "     |   |            '-._,'||       | \\\r\n"
			+ "     .`.,'             `..,'.'       , |`-.\r\n"
			+ "     l                       .'`.  _/  |   `.\r\n"
			+ "     `-.._'-   ,          _ _'   -\" \\  .     `\r\n"
			+ "`.\"\"\"\"\"'-.`-...,---------','         `. `....__.\r\n"
			+ ".'        `\"-..___      __,'\\          \\  \\     \\\r\n"
			+ "\\_ .          |   `\"\"\"\"'    `.           . \\     \\\r\n"
			+ "  `.          |              `.          |  .     L\r\n"
			+ "    `.        |`--...________.'.        j   |     |\r\n"
			+ "      `._    .'      |          `.     .|   ,     |\r\n"
			+ "         `--,\\       .            `7\"\"' |  ,      |\r\n"
			+ "            ` `      `            /     |  |      |    _,-'\"\"\"`-.\r\n"
			+ "             \\ `.     .          /      |  '      |  ,'          `.\r\n"
			+ "              \\  v.__  .        '       .   \\    /| /              \\\r\n"
			+ "               \\/    `\"\"\\\"\"\"\"\"\"\"`.       \\   \\  /.''                |\r\n"
			+ "                `        .        `._ ___,j.  `/ .-       ,---.     |\r\n"
			+ "                ,`-.      \\         .\"     `.  |/        j     `    |\r\n"
			+ "               /    `.     \\       /         \\ /         |     /    j\r\n"
			+ "              |       `-.   7-.._ .          |\"          '         /\r\n"
			+ "              |          `./_    `|          |            .     _,'\r\n"
			+ "              `.           / `----|          |-............`---'\r\n"
			+ "                \\          \\      |          |\r\n"
			+ "               ,'           )     `.         |\r\n"
			+ "                7____,,..--'      /          |\r\n"
			+ "                                  `---.__,--.'";
	
	static String eanibugiPic="     __                                _.--'\"7\r\n"
			+ "    `. `--._                        ,-'_,-  ,'\r\n"
			+ "     ,'  `-.`-.                   /' .'    ,|\r\n"
			+ "     `.     `. `-     __...___   /  /     - j\r\n"
			+ "       `.     `  `.-\"\"        \" .  /       /\r\n"
			+ "         \\     /                ` /       /\r\n"
			+ "          \\   /                         ,'\r\n"
			+ "          '._'_               ,-'       |\r\n"
			+ "             | \\            ,|  |   ...-'\r\n"
			+ "             || `         ,|_|  |   | `             _..__\r\n"
			+ "            /|| |          | |  |   |  \\  _,_    .-\"     `-.\r\n"
			+ "           | '.-'          |_|_,' __!  | /|  |  /           \\\r\n"
			+ "   ,-...___ .=                  ._..'  /`.| ,`,.      _,.._ |\r\n"
			+ "  |   |,.. \\     '  `'        ____,  ,' `--','  |    /      |\r\n"
			+ " ,`-..'  _)  .`-..___,---'_...._/  .'      '-...'   |      /\r\n"
			+ "'.__' \"\"'      `.,------'\"'      ,/            ,     `.._.' `.\r\n"
			+ "  `.             | `--........,-'.            .         \\     \\\r\n"
			+ "    `-.          .   '.,--\"\"     |           ,'\\        |      .\r\n"
			+ "       `.       /     |          L          ,\\  .       |  .,---.\r\n"
			+ "         `._   '      |           \\        /  .  L      | /   __ `.\r\n"
			+ "            `-.       |            `._   ,    l   .    j |   '  `. .\r\n"
			+ "              |       |               `\"' |  .    |   /  '      .' |\r\n"
			+ "              |       |                   j  |    |  /  , `.__,'   |\r\n"
			+ "              `.      L                 _.   `    j ,'-'           |\r\n"
			+ "               |`\"---..\\._______,...,--' |   |   /|'      /        j\r\n"
			+ "               '       |                 |   .  / |      '        /\r\n"
			+ "                .      .              ____L   \\'  j    -',       /\r\n"
			+ "               / `.     .          _,\"     \\   | /  ,-','      ,'\r\n"
			+ "              /    `.  ,'`-._     /         \\  i'.,'_,'      .'\r\n"
			+ "             .       `.      `-..'             |_,-'      _.'\r\n"
			+ "             |         `._      |            ''/      _,-'\r\n"
			+ "             |            '-..._\\             `__,.--'\r\n"
			+ "            ,'           ,' `-.._`.            .\r\n"
			+ "           `.    __      |       \"'`.          |\r\n"
			+ "             `-\"'  `\"\"\"\"'            7         `.\r\n"
			+ "                                    `---'--.,'\"`'";
	static String geobukwangPic="                       _\r\n"
			+ "            _,..-\"\"\"--' `,.-\".\r\n"
			+ "          ,'      __.. --',  |\r\n"
			+ "        _/   _.-\"' |    .' | |       ____\r\n"
			+ "  ,.-\"\"'    `-\"+.._|     `.' | `-..,',--.`.\r\n"
			+ " |   ,.                      '    j 7    l \\__\r\n"
			+ " |.-'                            /| |    j||  .\r\n"
			+ " `.                   |         / L`.`\"\"','|\\  \\\r\n"
			+ "   `.,----..._       ,'`\"'-.  ,'   \\ `\"\"'  | |  l\r\n"
			+ "     Y        `-----'       v'    ,'`,.__..' |   .\r\n"
			+ "      `.                   /     /   /     `.|   |\r\n"
			+ "        `.                /     l   j       ,^.  |L\r\n"
			+ "          `._            L       +. |._   .' \\|  | \\\r\n"
			+ "            .`--...__,..-'\"\"'-._  l L  \"\"\"    |  |  \\\r\n"
			+ "          .'  ,`-......L_       \\  \\ \\     _.'  ,'.  l\r\n"
			+ "       ,-\"`. / ,-.---.'  `.      \\  L..--\"'  _.-^.|   l\r\n"
			+ " .-\"\".'\"`.  Y  `._'   '    `.     | | _,.--'\"     |   |\r\n"
			+ "  `._'   |  |,-'|      l     `.   | |\"..          |   l\r\n"
			+ "  ,'.    |  |`._'      |      `.  | |_,...---\"\"\"\"\"`    L\r\n"
			+ " /   |   j _|-' `.     L       | j ,|              |   |\r\n"
			+ "`--,\"._,-+' /`---^..../._____,.L',' `.             |\\  |\r\n"
			+ "   |,'      L                   |     `-.          | \\j\r\n"
			+ "            .                    \\       `,        |  |\r\n"
			+ "             \\                __`.Y._      -.     j   |\r\n"
			+ "              \\           _.,'       `._     \\    |  j\r\n"
			+ "              ,-\"`-----\"\"\"\"'           |`.    \\  7   |\r\n"
			+ "             /  `.        '            |  \\    \\ /   |\r\n"
			+ "            |     `      /             |   \\    Y    |\r\n"
			+ "            |      \\    .             ,'    |   L_.-')\r\n"
			+ "             L      `.  |            /      ]     _.-^._\r\n"
			+ "              \\   ,'  `-7         ,-'      / |  ,'      `-._\r\n"
			+ "             _,`._       `.   _,-'        ,',^.-            `.\r\n"
			+ "          ,-'     v....  _.`\"',          _:'--....._______,.-'\r\n"
			+ "        ._______./     /',,-'\"'`'--.  ,-'  `.\r\n"
			+ "                 \"\"\"\"\"`.,'         _\\`----...' mh\r\n"
			+ "                        --------\"\"'";
	

	int lv;
	int exp;
	String name;
	static int[] evolveCnt = new int[3];
	static String a;

	Pokemon() {

	}

	Pokemon(String name) {
		this(name, 5);
	}

	Pokemon(String name, int lv) {
		this.name = name;
		this.lv = lv;
	}

	void expPlus(int ranExp) {
		this.exp += ranExp;
	}

	void lvup() {
		this.lv++;
	}

	void printInfo() {
		System.out.println(name + " Lv." + lv + "[" + exp + "/100]입니다.");
	}

	void gameStart() {

		Random rand = new Random();

		while (true) {
			int ranExp;
			int lvcnt;
			lvcnt = 0;
			Scanner sc = new Scanner(System.in);
			System.out.println(this.name + " 레벨업 게입 시작 1 종료 0");
			int ans = sc.nextInt();
			if (ans == 1) {
				boolean ranDom = rand.nextBoolean();
				if (ranDom == false) {
					System.out.println("꽝! 아무것도 없습니다....");
				} else {
					ranExp = rand.nextInt(451) + 50;

					expPlus(ranExp);
					System.out.println("축하합니다!\n얻은 경험치 : " + ranExp +" EXP");

					if (this.exp > 100) {
						while (this.exp > 100) {
							this.exp -= 100;
							lvcnt++;
							lvup();
							if (this.lv > 15) {
								this.lv = 15;
								this.exp = 100;
								break;
							}
						}
						System.out.println("우왕 " + this.name + " 레벨 " + lvcnt + " UP!!");
						printInfo();
					} else {
						System.out.println("아쉽게 레벨업은 못했네요");
						printInfo();
					}

					System.out.println("");
					System.out.println("");

					if (this.lv >= 15) {
						System.out.println("축하합니다!" + this.name + "★☆★☆☆★만렙★☆★☆★☆\n");
						System.out.println("진화시키겠습니까 ?! 숫자를 입력하세요 1.네 / 0.아니오");
						ans = sc.nextInt();
						if (ans == 1) {

							System.out.println("....으잉!?" + this.name + "의 상태가.....!\n");
							System.out.print("축하합니다!" + this.name + "는( 은 ) ");
							if (this.name.equals("피카츄")) {
								System.out.println("라이츄 ( 으 )로 진화했다!");
								System.out.println(Pokemon.raichuPic);
								Pokemon.evolveCnt[0]++;
								System.out.println(Pokemon.evolveCnt[0]);
							} else if (this.name.equals("파이리")) {
								System.out.println("리자드 ( 으 )로 진화했다!");
								System.out.println(Pokemon.rezardPic);
								Pokemon.evolveCnt[1]++;
							} else if (this.name.equals("리자드")) {
								System.out.println("리자몽 ( 으 )로 진화했다!");
								System.out.println(Pokemon.rezamongPic);
								Pokemon.evolveCnt[1]++;
							} else if (this.name.equals("꼬부기")) {
								System.out.println("어니부기 ( 으 )로 진화했다!");
								System.out.println(Pokemon.eanibugiPic);
								Pokemon.evolveCnt[2]++;
							} else if (this.name.equals("어니부기")) {
								System.out.println("거북왕 ( 으 )로 진화했다!");
								System.out.println(Pokemon.geobukwangPic);
								Pokemon.evolveCnt[2]++;
							}

						}break;

					}


				}

			} else {
				break;
			}
		}
	}
}

public class Test04 {

	public static void main(String[] args) {
		Pokemon[] picachu = new Pokemon[2];
		picachu[0] = new Pokemon("피카츄");
		picachu[1] = new Pokemon("라이츄", 1);

		Pokemon[] pyreeee = new Pokemon[3];
		pyreeee[0] = new Pokemon("파이리");
		pyreeee[1] = new Pokemon("리자드", 1);
		pyreeee[2] = new Pokemon("리자몽", 1);

		Pokemon[] ggobugi = new Pokemon[3];
		ggobugi[0] = new Pokemon("꼬부기");
		ggobugi[1] = new Pokemon("어니부기", 1);
		ggobugi[2] = new Pokemon("거북왕", 1);

		while (true) {
			System.out.println(Pokemon.titlePic);
			System.out.println("=======================현재 가진 포켓몬======================");
			picachu[Pokemon.evolveCnt[0]].printInfo();
			pyreeee[Pokemon.evolveCnt[1]].printInfo();
			ggobugi[Pokemon.evolveCnt[2]].printInfo();

			System.out.println("============================================================");
			System.out.println("어떤 포켓몬을 레벨업 시킬까요 ?! 숫자로 선택하세요");
			System.out.println("1." + picachu[Pokemon.evolveCnt[0]].name + " 2." + pyreeee[Pokemon.evolveCnt[1]].name
					+ " 3." + ggobugi[Pokemon.evolveCnt[2]].name);

			Scanner sc = new Scanner(System.in);
			int answer = sc.nextInt();
			switch (answer) {
			case 1:
				if (Pokemon.evolveCnt[0] < 1) {
					System.out.println(Pokemon.picachuPic);
					picachu[Pokemon.evolveCnt[0]].gameStart();
					break;

				} else {
					System.out.println(picachu[Pokemon.evolveCnt[0]].name + "는 ( 은 ) 최종진화! 더이상 진화불가▲▲▲ ");
					break;
				}
			case 2:
				if (Pokemon.evolveCnt[1] < 2) {
					if (Pokemon.evolveCnt[1] == 0) {
						System.out.println(Pokemon.pyriPic);
					} else {
						System.out.println(Pokemon.rezardPic);
					}

					pyreeee[Pokemon.evolveCnt[1]].gameStart();
					break;
				} else {
					System.out.println(pyreeee[Pokemon.evolveCnt[1]].name + "는 ( 은 ) 최종진화! 더이상 진화불가▲▲▲ ");
					break;
				}

			case 3:
				if (Pokemon.evolveCnt[2] < 2) {
					if (Pokemon.evolveCnt[2] == 0) {
						System.out.println(Pokemon.ggobugiPic);
					} else {
						System.out.println(Pokemon.eanibugiPic);
					}
					ggobugi[Pokemon.evolveCnt[2]].gameStart();
					break;
				} else {
					System.out.println(ggobugi[Pokemon.evolveCnt[0]].name + "는 ( 은 ) 최종진화! 더이상 진화불가▲▲▲ ");
					break;
				}
			}
			System.out.println("메인화면 : 1  종료:  0");
			answer = sc.nextInt();
			if (answer == 1) {
				continue;
			} else {
				System.out.println("=======================게임 종료======================");
				break;
			}
		}

	}
}

나중에..디버깅표랑 한글코딩....등등 분석해보자

Comments