3일차 - 231228

김리오·2023년 12월 28일

학원공부 TIL

목록 보기
3/13

📌if문과 else if 문은 단계적으로 작동한다

	if(num<10) {
			System.out.println("num의 값은 10 미만입니다.");
    } else if (num<100) {
		System.out.println("num의 값은 10 이상, 100 미만입니다.");
	} else if (num<1000) {
		System.out.println("num의 값은 100 이상, 1000 미만입니다.");
	} else {
		System.out.println("num의 값은 1000이상입니다.");
	}
	
  • if 조건문을 수행한 후, 다음 else if 조건문으로 넘어온다.
    그렇다면 굳이 else if 조건문을 아래와 같이 작성할 필요가 없다.
else if (10<=num && num<100)

📌부등호로 범위를 표시할 때

  • 교집합 부분은 '&&' 연산자를 활용해야 한다.
	num >= 1 && num <= 10

📌최댓값을 출력하는 문제

	max = n1 < n2 ? n2 : n1;
	max = n2 < n3 ? n3 : n2;
	max = n1 < n3 ? n3 : n1;
  • 모든 경우의 수를 따지면 코드를 3줄 써야 한다.
	max = (n1 > n2) ? n1 : n2;
	max = (max > n3) ? max : n3;
  • max 변수에는 가장 큰 것만 담기게 해서 2줄만 써서 비교할 수 있다.

📌switch문을 이용한 학점 구하는 문제

  • 반복되는 것이 있는지 확인하고
    어떻게 하면 간단히 표현할 수 있을지 고민하자.
  • 100 / 99 ~ 95 / 94 ~ 90 / 89 ~ 85 ... 5개 단위로 반복된다.
  • 반복되는 것은 나눗셈과 깊은 연관이 있다.
//		switch (score) {
//		case 100 :
//		case 99 :
//		case 98 :
//		case 97 :
//		case 96 :
//		case 95 :
//			System.out.println("A+학점");
//			break;
	String grade = "F";
	s = s/5;
	switch (s) {
		case 20:
		case 19:
			grade="A+";
			break;
  • 아래와 같이 코드를 작성하면 효율적이다.

📌switch문 이용할 때 막혔던 경우

  • switch문 코드 작성을 다했는데, 결과값이 출력되지 않은 경우가 있었다.
switch (ch) {
			case 'A' :
			case 'a' :
				System.out.println("사과");
				break;```
        
        System.out.println("끝");
  		}
  • 실행문을 switch문 블럭 안에 둬서 break 걸린 후 실행이 안 됐다.
    break 걸리면, switch 안에 실행문은 그 단계에서 멈춘다는 것을 명심하자.
profile
생각하는 사람이 되고 싶다

0개의 댓글