💡문제 설명
각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요.
7019131804
class Solution {
public int solution(int angle) {
int answer = 0;
if (angle < 90) {
answer = 1;
} else if (angle == 90) {
answer = 2;
} else if (angle < 180) {
answer = 3;
} else {
answer = 4;
}
return answer;
}
}
//개선한 코드
if (angle < 1 || angle > 180) {
throw new IllegalArgumentException("각도는 1 이상 180 이하만.");
}
return answer;
입력값 angle은 1 이상 180 이하의 정수일 것으로 문제에 암시돼어 있지만 예상치 못한 값이 들어올 수도 있기 때문에 → 입력 유효성 검사를 추가해주는 게 좋다.
IllegalArgumentException은 자바에서는 메서드 인자(파라미터)가 허용된 범위를 벗어났을 때 이 예외를 자주 사용한다.