KH8일차

2022. 6. 29. 18:25코딩/Java

메소드 테스트1

package kh.java.func;

import kh.java.func2.MethodTest2;
import java.util.Scanner;

public class MethodTest {
	public void test6() {
		int num = 100;
		System.out.println("num : "+num);
		test7(num);//매개변수로 기본형 데이터를 전송시 값을 복사한후
		//복사해서 사용하기때문에 원본데이터를 건드리지않는다
		System.out.println("num : "+num);
		int[]arr= {1,2,3,4,5};
		int[]arr1=arr;//주소값복사
		for(int i=0;i<arr.length;i++) {
			System.out.print(arr[i]+" ");
		}
		System.out.println();
		//참조형데이터를 매개변수로 전달하면
		//주소값이 전달 -> 얕은복사
		test8(arr);
		System.out.println(arr[2]);
		test9(arr[2]);
		System.out.println(arr[2]);
	}
	public void test7(int num) {
		num += 100;
		System.out.println("test7 : "+num);
	}
	public void test8(int[]arr) {
		arr[2]=100;
		for(int i=0;i<arr.length;i++) {
			System.out.print(arr[i]+" ");
		}
		System.out.println();
	}
	public void test9(int num) {
		num += 300;
	}
	public void test5() {
		Scanner sc = new Scanner(System.in);
		System.out.print("첫번째 정수 입력 : ");
		int num1 = sc.nextInt();
		System.out.print("두번째 정수 입력 : ");
		int num2 = sc.nextInt();
		// 두 수의 합을 출력 -> 메소드로 분리
		// 입력 받은 두 수를 합쳐주는 메소드를 호출하고 결과를 받을것
		int sum = add(num1, num2);
		System.out.println("입력받은 두 수의 합은 : " + sum);
		// 입력 받은 두 수의 나눅; 결과를 받아오는 메소드 생성
		// 나누기 결과는 실수타입으로 메소드 이름 ->div
		// 10 3 -> 3.33
		double div1 = div(num1, num2);
		div2(num1,num2);
		System.out.printf("입력 받은 두 수의 나눈값은 : %.2f", div1);
	}

	public int add(int su1, int su2) {
		System.out.println("su1 : " + su1);
		System.out.println("su2 : " + su2);
		int sum = su1 + su2;
		return sum;
	}

	public void div2(int num1, int num2) {
		double result = (double) num1 / num2;
		System.out.println(result);
	}

	public double div(int num1, int num2) {
		double result = (double) num1 / num2;
		return result;
	}

	public void test1() {
		System.out.println("test1메소드 입니다.");
		test2();
		int num = test4();
	}

	private void test2() {
		System.out.println("test2메소드 입니다.");
		return;
	}

	public int test4() {
		return 100;
	}
}

메소드 테스트2

package kh.java.func2;

public class MethodTest2 {
	
	public void test3(){
		System.out.println("test3메소드입니다.");
	}
}

메소드 테스트3

package kh.java.func;
import java.util.Scanner;
public class MethodTest3 {
	public void test1() {
		Scanner sc = new Scanner(System.in);
		System.out.println("정수를 입력하세요 : ");
		int num1 = sc.nextInt();

		System.out.println("정수를 입력하세요 : ");
		int num2 = sc.nextInt();

		System.out.println("정수를 입력하세요 : ");
		int num3 = sc.nextInt();
	}
	//add메소드 생성
	//매개변수로 정수를 받아서 합친 결과를 리턴하는 메소드
	public int add(int num1,int num2) {
		return (num1+num2);
	}
	public int add2(int num1,int num2,int num3) {
		return (num1+num2+num3);
	}
}

TV

package kh.java.func;

public class TV {

	public int size; // TV사이즈
	public boolean power; // 전원
	public int ch; // 채널
	public int vol; // 볼륨

	//현재 power 변수의 값을 반대로 변경 (on<->off)
	public void power() {
		power = !power;
		if(power) {
			System.out.println("전원이 켜졌습니다.");
		}else {
			System.out.println("전원이 꺼졌습니다.");
		}
	}
	//현재 ch변수 값을 1 증가(현재 채널번호에서 1증가한번호로 변경)
	public void chUp() {
		ch++;
		System.out.println("현재 채널 번호 : "+ch);
	}
	//현재 ch변수 값을 1 감소(현재 채널번호에서 1감소한번호로 변경)
	public void chDown() {
		ch--;
		System.out.println("현재 채널 번호 : "+ch);
	}
	//현재 vol변수 값을 1증가
	public void volUp() {
		vol++;
		System.out.println("현재 소리 크기 : "+vol);
	}
	//현재 vol변수 값을 1감소
	public void volDown() {
		vol--;
		System.out.println("현재 소리 크기 : "+vol);
	}
}

카페

package kh.java.func;
import java.util.Scanner;
public class Cafe {
	int kind; //1.아메리카노,2...
	boolean temp;	//true:아이스, false:핫
	boolean size;	//true:tall, false:grande
	int shot; 		//샷추가
	boolean money;	//true:card, false:현금
	boolean inOut;	//true:매장,false:테이크아웃
	int amount; 	//구매수량
	Scanner sc = new Scanner(System.in);
	
	//카페 운영시작메소드
	public void start() {
		while(true) {
			System.out.println("--------------------");
			System.out.println("1. 메뉴판보기");
			System.out.println("2. 주문하기");
			System.out.println("3.주문내역확인");
			System.out.println("4. 종료");
			System.out.print("선택 > ");
			int select = sc.nextInt();
			switch(select) {
			case 1:
				showMenu();
				break;
			case 2:
				order();
				break;
			case 3:
				showLastOrder();
				break;
			case 4:
				System.out.println("종료");
				return;
			}
		}
	}
	//주문하기 메소드
	public void showLastOrder() {
		System.out.println("=====최근 주문 내역=====");
		if(kind == 1) {
			System.out.println("음료 종류 : 아메리카노");
		}else if(kind==2) {
			System.out.println("음료 종류 : 카페라떼");
		}else if(kind==3) {
			System.out.println("음료 종류 : 카페모카");
		}else if(kind==4) {
			System.out.println("음료 종류 : 아이스티");
		}else if(kind==5) {
			System.out.println("음료 종류 : 카모마일");
		}
		if(temp) {
			System.out.println("온도 : ICE");
		}else {
			System.out.println("온도 : HOT");
		}
		if(size) {
			System.out.println("사이즈 : tall");
		}else {
			System.out.println("사이즈 : grande");
		}
		if(kind != 5) {
			System.out.println("샷추가 : "+shot+"회");
		}else {
			System.out.println("샷추가 : 0회");
		}
		
		if(money) {
			System.out.println("카드결제");
		}else {
			System.out.println("현금결제");
		}
		if(inOut) {
			System.out.println("매장이용");
		}else {
			System.out.println("테이크아웃");
		}
		System.out.println("주문수량 : "+amount);
		
	}
	public void order() {
		showMenu();
		System.out.print("음료를 선택하세요 > ");
		kind = sc.nextInt();
		System.out.print("온도선택[1.ICE / 2.HOT] : ");
		int tempSel = sc.nextInt();
		if(tempSel == 1) {
			temp = true;
		}else {
			temp = false;
		}
		System.out.print("음료 사이즈 선택[1.tall / 2.grand] : ");
		int sizeSel = sc.nextInt();
		if(sizeSel == 1) {
			size = true;
		}else {
			size = false;
		}
		if(kind != 5) {
			System.out.print("샷추가 몇번 하시겠습니까?");			
			shot = sc.nextInt();
		}
		System.out.print("결제수단 선택[1.카드 / 2.현금] : ");
		int moneySel = sc.nextInt();
		if(moneySel == 1) {
			money = true;
		}else {
			money = false;
		}
		System.out.print("[1.매장 / 2.테이크아웃] : ");
		int inOutSel = sc.nextInt();
		if(inOutSel == 1) {
			inOut = true;
		}else {
			inOut = false;
		}
		System.out.print("수량을 입력하세요 : ");
		amount = sc.nextInt();
		System.out.println("주문이 완료 되었습니다.");
		brewing();
	}
	public void brewing() {
		System.out.println("     o");
		delay(500);
		System.out.println("     o");
		delay(500);
		System.out.println("     o");
		delay(500);
		System.out.println("     o");
		delay(500);
		System.out.println("     o");
		delay(500);
		System.out.println("│~~~~~~~~├─┐");
		System.out.println("│        │ │");
		System.out.println("│        ├─┘");
		System.out.println("│        │  ");
		System.out.println("│        │  ");
		System.out.println("└────────┘  ");
		System.out.println("음료 나왔습니다!!!!");
	}
	public void delay(int time) {
		try {
			Thread.sleep(time);
		}catch(InterruptedException e) {
			e.printStackTrace();
		}
	}
	//메뉴판출력메소드
	public void showMenu() {
		System.out.println("======음료======");
		System.out.println("1. 아메리카노");
		System.out.println("2. 카페라떼");
		System.out.println("3. 카페모카");
		System.out.println("4. 아이스티");
		System.out.println("5. 카모마일");
	}
}

 

 

'코딩 > Java' 카테고리의 다른 글

KH10일차  (0) 2022.07.01
KH9일차  (0) 2022.06.30
KH7일차  (0) 2022.06.29
kh6일차(배열)  (0) 2022.06.27
kh5일차  (0) 2022.06.24