📚 문제 설명
자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
❗ 제한 조건
- n은 10,000,000,000이하인 자연수입니다.
✏ 작성한 코드
class Solution {
public int[] solution(long n) {
String a = "" + n;
int[] answer = new int[a.length()];
int cnt = 0;
while (n > 0) {
answer[cnt] = (int) (n % 10);
n /= 10;
cnt++;
}
return answer;
}
}
🤔 느낀점
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0
이 오류를 만나서 반성하려고 정리한다...
인덱스가 배열의 크기보다 크거나 음수가 나올 때 발생하는 예외 코드인데 도대체 이게 왜 뜰까하고 고민해봤더니
int[] answer = {}; 이라고 주어진 상태에서 아무 수정없이 냅다 코드를 작성한 것 아니겠냐며...
미친거 아니야???하면서 스타벅스에서 부끄러운줄도 모르고 머리를 내리쳤다 진짜 똥멍청이
array는 반드시 배열 크기를 지정해주고 사용해야 한다
너무 기본적인거 아니냐고 진짜 정신 붙잡자 반성해
'Algorithm > 프로그래머스' 카테고리의 다른 글
[Lv. 2] 최댓값과 최솟값 (0) | 2023.01.16 |
---|---|
[Lv. 1] 기사단원의 무기 (0) | 2023.01.15 |
[Lv. 1] 문자열 내 마음대로 정렬하기 (0) | 2023.01.14 |
[LV. 1] 삼총사 (0) | 2023.01.13 |
[LV. 1] 나누어 떨어지는 숫자 배열 (0) | 2023.01.07 |
댓글