본문 바로가기

AWS CLOUD FRAMEWORK/Java

[Day08] Ex02

package function;

import java.util.Scanner;

public class Ex02 {
	public static void main(String[] args) throws Exception {
		// 함수의 호출형식에 맞춰 함수 정의하기(함수 만들기)
		
		// 1) 두 정수의 덧셈
		int t1 = add(12, 23);
		int t2 = add(1234, 5678);
		System.out.println("t1 : " + t1);
		System.out.println("t2 : " + t2);
		
		// 2) 두 정수를 전달받아서 큰 값을 반환하는 함수
		int t3 = bigNumber(12, 23);
		int t4 = bigNumber(1234, -5678);
		System.out.println("t3 : " + t3);
		System.out.println("t4 : " + t4);
		
		// 3) 반지름을 전달받아서, 원의 면적을 double 로 반환하는 함수
		// 원주율은 3.14로 계산 (원의 넓이 = 반지름 * 반지름 * 3.14)
		double t5 = circleSize(3);
		double t6 = circleSize(3.5);
		System.out.println("t5 : " + t5);
		System.out.println("t6 : " + t6);
		
		// 4) 문자열의 길이를 정수로 반환하는 함수
		int t7 = len("안녕하세요");
		int t8 = len("Hello, world !!");
		System.out.println("t7 : " + t7);
		System.out.println("t8 : " + t8);
		
		// 5) 전달받은 정수가 짝수인지 아닌지 판별하는 함수
		boolean t9 = isEvenNumber(9);
		boolean t10 = isEvenNumber(10);
		System.out.println("t9 : " + t9);
		System.out.println("t10 : " + t10);
		
//		"Hello".is
//		판별하는 함수(boolean을 반환하는 함수)는 보통 is 혹은 can, has 등으로 시작한다
		String text = "일분 일초가 달콤해\r\n" + 
				"이 남자 도대체 뭐야\r\n" + 
				"사랑에 빠지지 않곤\r\n" + 
				"못 배기겠어\r\n" + 
				"온 종일 내 맘은 저기\r\n" + 
				"시계바늘 위에 올라타\r\n" + 
				"한 칸씩 그대에게 더 가까이";
		Scanner sc = new Scanner(text);	// 문자열을 읽어내는 Scanner
		while(sc.hasNextLine()) {
			System.out.println(sc.nextLine());
			Thread.sleep(500);
		}
		sc.close();
		
	}
	// 자바의 함수는 반드시 지정된 타입의 값을 반환하도록 설계해야 한다
	// 함수 내부에 다른 함수를 정의하지 않는다
	// 함수는 클래스 아래에 있어야 한다
	static int add(int n1, int n2) {
		int answer = 0;
		answer = n1 + n2;
		return answer;
	}
	static int bigNumber(int n1, int n2) {
		int answer = n1;
		if(answer < n2) {
			answer = n2;
		}
		return answer;
	}
	static double circleSize(double radius) {	// 매개변수는 호출하는 사람이 알아볼 수 있도록
		double answer = 0;
		answer = radius * radius * 3.14;
		return answer;
	}
	static int len(String str) {
		return str.length();	// 만들어진 함수에서도 다른 함수를 호출할 수 있다
								// 함수간의 연계작업이 가능하다
		
		// JVM이 main을 호출
		// main이 Ex02.len 호출
		// Ex03.len이 String.length 호출
		// main -> len -> length
	}
	static boolean isEvenNumber(int num) {
		boolean flag = num % 2 == 0;
		return flag;
	}


}

'AWS CLOUD FRAMEWORK > Java' 카테고리의 다른 글

[Day08] Ex04  (0) 2023.04.05
[Day08] Ex03  (0) 2023.04.05
[Day08] Ex01  (0) 2023.04.05
[Day07] Quiz3  (0) 2023.04.05
[Day07] Ex09  (0) 2023.04.05