if 의 악랄함에 대해선 다들 많이 들어봤겠지
진짜 젤 많이 쓰이고 젤 어렵고 겹으로 쓰면 더 어렵고... 머리 터지고...
flow chart 짤 때, 진짜 제일 중요한 거 같고... 이 부분을 간단하게 만들 수록 소스가 가벼워진다고 생각합니다.
결국 알고리thm 도 if 등 조건문의 싸움이니깐...
자 살짝 설명해보자면
if(x>=50) {
system.out.print("상위권");
}
뭐 가볍게 이렇게 시작하지? ()안에 조건문이고 그게 참일 때 {}안에 돌아가는 구조. 설명보다 그냥 보시라
대충 위에 처럼 짜면 x가 50이상이면 상위권이 출력되는 것이다. 자세한 건 책이나 다른 블로그 보시고...
내가 이 글을 쓰는 건 if / else if / else 를 비교하기 위함이요
(예시)
조건이 다음과 같다
<<<평균이>>>
+ 90 ~ 100 : A학점
+ 81 ~ 90 : B학점
+ 71 ~ 80 : C학점
+그렇지 않으면 재시험
(1) 풀이법 : 각각 다른 if를 선언하여 if 들 사이의 레벨이 같은 조건
if(100>=(int)avg && (int)avg>91) { grade = "A학점";}
if(90>=avg && avg>81) grade = "B학점";
if(80>=avg && avg>71)
grade = "C학점";
if(!(avg>71)) { grade = "재시험";}
위의 코드에선 그것 뿐만 아니라 if 조건 선언시 1줄로 입력할 땐 {}를 안치기도 하고, 줄바꿔서 표현하기도 한다.
또한, 마지막 if 가 킬링포인트 인데, avg>71 이 아닐 때(avg가 71점이하)를 위하여 "!(avg>71) "이라고 표기했다. 너무 신기하지 않나...NOT 을 이렇게 쓰는 건지 처음 알았다... 꼭 기억해두기...
(2) 풀이법 : if / else if / else 의 차이점
if(avg>=91) grade="A학점";
else if(avg >= 81) grade="B학점";
else if(avg >= 71) grade="C학점";
else grade="재시험";
첫번째 if 돌고~ 첫바퀴 돌았지만 해당 안될 때 else if 돌고, 첫째 둘째 아니면 세번째 else if 돌고, 말고 나머지는 else
else 랑 else if 랑 구문이 참 헷갈리게도 되어 있는데, 놓치는 범위나 조건이 있을 가능성이 높다. 꼭 세번씩 생각하고 쓰기
'JAVA 줘? 잡아줘!' 카테고리의 다른 글
[Java]Day_017 : if 문 활용한 예시. 코드 순서 중요! (0) | 2023.08.25 |
---|---|
[Java]Day_016 : DecimalFormat 너무 귀찮지 않음? (0) | 2023.08.24 |
[Java]Day_014 : 소수점 자리 맞추기 (1) | 2023.08.24 |
[Java]Day_013 : 연산자 총 정리 (0) | 2023.08.24 |
[Java]Day_012 : 변수 대입 시 기초문법 응용문제 (0) | 2023.08.21 |