오류, 기능, 문제해결(JAVA)

자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴

seungmin576 2025. 1. 1. 18:09

package programmers;

import java.util.ArrayList;

public class Reverse {
    public ArrayList<Long> solution(long n) {
        ArrayList<Long> answer = new ArrayList<>();
        long j = 0;

        while(n > 0){
            j = n % 10;
            answer.add(j);
            n /= 10;
        }
        return answer;
    }

    public static void main(String[] args) {
        Reverse reverse = new Reverse();
        System.out.println(reverse.solution(12345));
    }
}

처음엔 long형으로 그냥 배열을 선언하면 되겟지 했는데 long형으로 선언해도 배열의 크기는 int형, 즉 정수형의 크기만 가질 수 있다고 해서 ArrayList로 바꿔서 배열을 선언했다.

while 문은 주어진 각 자릿수의 숫자를 마지막부터 구해서 배열에 집어넣었다.

배열의 크기에 대해 깨우치게 되어 좋은 문제였다.