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 |
댓글