Cute Happy Ghost
본문 바로가기
JAVA/Java

20200928_8 클래스분리 Review

by JENN_tech7 2020. 9. 29.
728x90
SMALL
  • 1차원배열사용한것을 클래스분리해봤다
package sample; //학생 신상 정보 입출력 프로그램(1차원 배열사용-클래스분리)
import java.util.Scanner;
class Test{//멤버필드
	Scanner in = new Scanner(System.in);

	String[] name = new String[6]; //이름
	String[] age = new String[3];//나이
	String[] num = new String[11];//전화번호
	
	public Test() {//생성자 : 필수! 
		input();
	}
	void input() {//정보 입력

		for (int i = 0; i < 3; i++) {
			System.out.print("* 학생" + (i+1) +"의 이름 입력 : ");
			name[i] = in.next();

			System.out.print(name[i]+ "의 나이를 입력 : ");
			age[i] = in.next();

			System.out.print(name[i] +"의 전화번호를 입력 : ");
			num[i] = in.next();	
		}//for
		print();
	}
	void print() {//학생정보출력
		System.out.println("<학생 정보>");

		for (int i = 0; i < 3; i++) {
			System.out.print((i+1) + ". 이름 :" + name[i] + " ");
			System.out.print(", 나이 :" + age[i] +" ");
			System.out.print(", 전화번호 : " + num[i]+ "\n"); 
		}//for

	}
}
public class Sample05_1 {
	public static void main(String[] args) {
		new Test(); 
	
		/*Test t= new Test();
		t.input();
		t.print();
		*/
	}
}

첨에 저거 public 웅앵을 안했더니 맨밑 주석처럼 하면 나오는데 한줄로만 호출하려고하니 안되는거다 ㅠ

생성자떄문에냐고 쌤한테 물어봤더니 그렇다고 하셨다 ㅋㅋㅋㅋ

public 웅앵이 생성자였던 것이다!

쟤 넣고 밑에 차례로 넣어주면 new Test(); 이거하나로도 호출가능;

개미쳤따 저거원래 n줄짜린데 한줄로 줄여버렸어...

 

 

 

  • 1차원, 정렬탐색 + 클래스분리
package sample; //학생 신상 정보 입출력 프로그램(1차원 배열사용, 정렬과 탐색추가+클래스분리 )
import java.util.Scanner;
class bbb{//멤버필드
	Scanner in = new Scanner(System.in);

	String[] name = new String[6]; //이름
	String[] age = new String[3]; //나이
	String[] num = new String[11]; //전화번호
	
	public bbb() {//생성자 : 필수! 
		input();
	}
	void input(){ //정보입력
		for (int i = 0; i < 3; i++) {
			System.out.print("* 학생" + (i+1) +"의 이름 입력 : ");
			name[i] = in.next();

			System.out.print(name[i]+ "의 나이를 입력 : ");
			age[i] = in.next();	

			System.out.print(name[i] +"의 전화번호를 입력 : ");
			num[i] = in.next();	
		}//for
		info();
	}
	void info() { //정렬메소드 들어갔다나감
		for (int s = 0; s < 2; s++) {
			for (int t = s+1; t < 3; t++) {
				if (age[t] > age[s]) {
					String tmp = age[t];
					age[t] = age[s];
					age[s] = tmp;//나이 많은 순서대로
				}
			}
		}
		print();
	}
	void print() {//학생정보출력
		System.out.println("<학생 정보>");
	
		for (int i = 0; i < 3; i++) {
			System.out.print((i+1) + ". 이름 :" + name[i] + " ");
			System.out.print(", 나이 :" + age[i] +" ");
			System.out.print(", 전화번호 : " + num[i]+ "\n"); //학생정보 출력
		}//for
		search();
	}
	void search() {//학생정보 검색
		for(;;) 
		{
		System.out.print("찾으시는 학생의 나이 : ");
		String a = in.next();
		
		for (int i = 0; i < 3; i++) {
			if (a.equals(age[i])) {
				System.out.println("이름 : " + name [i] +", 나이 : "+ age[i]+ ", 전화번호 : " + num[i]);	
				System.out.println("프로그램을 종료합니다");
				return;
			}
			}//for
			System.out.println("결과가 없습니다. 다시 입력해주세요");	
		} 
	}
}
public class Sample05_2 {
	public static void main(String[] args) 
	{
		new bbb();
		
		/*bbb b= new bbb();
		b.input();
		b.info();
		b.print();
		b.search();
		*/
	}
}

정렬은 오류가났는데 왜났는지 모르겠즤만,,,,

와 이거 쓰다가 갑자기 뇌리에 왜때문에 그런지 스쳐서 바로 수정하고옴;

package sample; //학생 신상 정보 입출력 프로그램(1차원 배열사용, 정렬과 탐색추가+클래스분리 )
import java.util.Scanner;
class bbb{//멤버필드
	Scanner in = new Scanner(System.in);

	String[] name = new String[6]; //이름
	int[] age = new int[3]; //나이
	String[] num = new String[11]; //전화번호
	
	public bbb() {//생성자 : 필수! 
		input();
	}
	void input(){ //정보입력
		for (int i = 0; i < 3; i++) {
			System.out.print("* 학생" + (i+1) +"의 이름 입력 : ");
			name[i] = in.next();

			System.out.print(name[i]+ "의 나이를 입력 : ");
			age[i] = in.nextInt();	

			System.out.print(name[i] +"의 전화번호를 입력 : ");
			num[i] = in.next();	
		}//for
		info();
	}
	void info() { //정렬메소드 들어갔다나감
		for (int s = 0; s < 2; s++) {
			for (int t = s+1; t < 3; t++) {
				if (age[t] > age[s]) {
					int tmp = age[t];
					age[t] = age[s];
					age[s] = tmp;//나이 많은 순서대로
				}
			}
		}
		print();
	}
	void print() {//학생정보출력
		System.out.println("<학생 정보>");
	
		for (int i = 0; i < 3; i++) {
			System.out.print((i+1) + ". 이름 :" + name[i] + " ");
			System.out.print(", 나이 :" + age[i] +" ");
			System.out.print(", 전화번호 : " + num[i]+ "\n"); //학생정보 출력
		}//for
		search();
	}
	void search() {//학생정보 검색
		for(;;) 
		{
		System.out.print("찾으시는 학생의 나이 : ");
		String a = in.next();
		
		for (int i = 0; i < 3; i++) {
			if (a.equals(age[i])) {
				System.out.println("이름 : " + name [i] +", 나이 : "+ age[i]+ ", 전화번호 : " + num[i]);	
				System.out.println("프로그램을 종료합니다");
				return;
			}
			}//for
			System.out.println("결과가 없습니다. 다시 입력해주세요");	
		} 
	}
}
public class Sample05_2 {
	public static void main(String[] args) 
	{
		new bbb();
		
		/*bbb b= new bbb();
		b.input();
		b.info();
		b.print();
		b.search();
		*/
	}
}

틀린그림 찾기 ^0^

 

 

 

  • 2차원배열 + 클래스분리
package sample; //학생 신상 정보 입출력 프로그램(2차원 배열사용+클래스분리)
import java.util.Scanner;

class ccc{//멤버필드
	Scanner in = new Scanner(System.in);

	String[][] arr = new String[3][3];
	
	public ccc() {//생성자 필수!!
		input();
	}
	void input() {//정보입력
		for (int i = 0; i < arr.length; i++) 
		{
			System.out.print("* 학생 " + (i+1) + "의 이름 입력 : ");
			arr[i][0] = in.next();

			System.out.print(arr[i][0] + "의 나이 입력 : ");
			arr[i][1] = in.next();

			System.out.print(arr[i][0]+ "의 전화번호 입력 : ");
			arr[i][2] = in.next();
		}//for
		print();
	}
	void print() {//정보출력
		System.out.println("<학생 정보>");
		for (int i = 0; i < arr.length; i++) {
			System.out.print((i+1)+ ". 이름 : " + arr[i][0]);
			System.out.print(", 나이 : " + arr[i][1]);
			System.out.print(", 전화번호 : " + arr[i][2]);
			System.out.println(" ");
		}//for
		search();
	}
	void search() { //정보 검색
		for(;;) {
			System.out.print("찾으시는 학생의 나이 : ");
			String a = in.next();

			for (int i = 0; i < arr.length; i++) {
				if (a.equals(arr[i][1])) {
					System.out.println("이름 : " + arr[i][0] + ", 나이 : " + arr[i][1]+", 전화번호 : " + arr[i][2]);
					System.out.println("프로그램을 종료합니다");
					return;
				}
			}//for
			System.out.println("결과가 없습니다. 다시 입력해주세요");	
		}
	}
}
public class Sample05_3 {
	public static void main(String[] args) 
	{
		new ccc();
	}
}

 

728x90
LIST

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

20200929_9 클래스배열  (0) 2020.09.29
20200929_9  (0) 2020.09.29
20200928_8 반복문,배열 Review  (0) 2020.09.28
20200928_8 클래스분리  (0) 2020.09.28
학생 신상 정보 입출력프로그램 (2차원 배열)  (0) 2020.09.28

댓글