늦은 프로그래밍 이야기

[Java] int형 숫자 각각의 자릿수 구하기 본문

내일배움캠프/자료구조 알고리즘

[Java] int형 숫자 각각의 자릿수 구하기

한정규 2022. 12. 20. 01:34

나눗셈 연산을 이용하는 방법

대상 숫자를 10으로 반복해서 나머지 연산을 하여 1의자리를 가져온다.

int num = 12345;
List<Integer> arr = new ArrayList<>();
while (num > 0) {
    arr.add(num % 10);
    num /= 10;
}
System.out.println(arr);
// [5, 4, 3, 2, 1]

문자열로 변환 후 나누는 방법

12345를 "12345"로 변환해준 후 각각의 character를 하나씩 담는다.

int num = 12345;
String s = Integer.toString(num);
int[] arr = new int[s.length{}];
for (int i = 0; i < s.lenghth(); i++) {
    arr[i] = s.charAt(i) - '0';
}
System.out.println(Arrays.toString(arr));
// [1, 2, 3, 4, 5]

Stream을 이용한 방법

int num = 12345;
int[] arr = Stream.of(String.valueOf(num).split("")).mapToInt(Integer::parseInt).toArray();
System.out.println(arr);
// [1, 2, 3, 4, 5]

'내일배움캠프 > 자료구조 알고리즘' 카테고리의 다른 글

[Java] ArrayList 정렬하기  (0) 2022.12.23
자바 알고리즘 (2차원 배열)  (0) 2022.12.06
알고리즘 타임어택 오답노트  (0) 2022.11.16
그래프, DFS & BFS, Dynamic Programming  (1) 2022.11.14
해쉬  (0) 2022.11.14
Comments