Algorithm
자연수 뒤집어 배열로 만들기 - Level 1
한둥둥
2024. 12. 27. 00:17
이번 문제를 풀 때, 컨셉은 최대한 직관적이고 누가보아도 어떤 코드인지 알 수 있는 코드를 만드는 것 입니다.
앞으로도 코딩테스트 문제를 푸는 것도 중요하겠지만 최대한 직관적인 코드를 작성하려고 노력 할 것입니다.
import java.util.*;
class Solution {
public int[] solution(long n) {
String reverse = getReverseNumber(n);
return reverse.chars().map(Character::getNumericValue).toArray();
}
private String getReverseNumber(long n) {
return new StringBuilder(Long.toString(n)).reverse().toString();
}
}
1. String reverse = getReverseNumber(n);
• n을 문자열로 변환하고 뒤집는 로직이 getReverseNumber 메서드로 위임됩니다.
• 가독성과 재사용성이 향상됩니다.
2. reverse.chars().map(Character::getNumericValue).toArray();
• 문자열을 IntStream으로 변환한 후 각 문자를 숫자로 매핑하여 배열로 반환합니다.
private String getReverseNumber(long n)
• 접근 제어자: private
• 외부에서 호출하지 못하도록 설정하여 해당 메서드가 내부 구현 디테일임을 나타냅니다.
• 동작:
1. Long.toString(n): long 타입의 숫자를 문자열로 변환합니다.
• 예: 12345L → "12345".
2. new StringBuilder(...).reverse(): 문자열을 뒤집습니다.
• 예: "12345" → "54321".
3. .toString(): 뒤집어진 문자열을 반환합니다.