천 단위 콤마 찍기 프로그램 (Java)

  • 3 minutes to read

이 글에서는 Java를 사용하여 천 단위 콤마 찍기 프로그램을 작성하고 실행하는 방법을 소개합니다. 사용자로부터 입력받은 숫자에 천 단위 콤마를 추가하여 출력하는 프로그램입니다.

1. 소스 코드 작성

Java로 작성된 천 단위 콤마 찍기 프로그램의 소스 코드는 다음과 같습니다.

import java.util.Scanner;

public class ThousandsSeparator {
    public static void main(String[] args) {
        // 사용자로부터 입력받기 위한 Scanner 객체 생성
        Scanner scanner = new Scanner(System.in);
        
        // 사용자에게 숫자를 입력하도록 안내
        System.out.print("변환시킬 숫자를 입력하세요... => ");
        String input = scanner.nextLine();

        // 입력받은 문자열이 유효한 숫자인지 검사
        if (!isValidNumber(input)) {
            System.out.println("유효한 숫자가 아닙니다.");
            return;
        }

        // 천 단위 콤마를 추가한 문자열 생성
        String result = addCommas(input);
        // 변환 결과 출력
        System.out.println("변환 결과 : " + result);
    }

    // 문자열이 유효한 숫자인지 검사하는 메소드
    private static boolean isValidNumber(String str) {
        for (char ch : str.toCharArray()) {
            // 문자가 숫자가 아닌 경우 false 반환
            if (ch < '0' || ch > '9') {
                return false;
            }
        }
        // 모든 문자가 숫자인 경우 true 반환
        return true;
    }

    // 천 단위 콤마를 추가하는 메소드
    private static String addCommas(String str) {
        int length = str.length(); // 입력 문자열의 길이
        int count = 0; // 콤마를 추가하기 위한 카운터
        // 변환 결과를 저장할 StringBuilder 객체 생성
        StringBuilder result = new StringBuilder();

        // 문자열의 끝에서부터 처음으로 거꾸로 이동하며 콤마 추가
        for (int i = length - 1; i >= 0; i--) {
            // 문자를 결과 문자열의 앞에 추가
            result.insert(0, str.charAt(i));
            count++;

            // 3의 배수 위치에 콤마 추가 (맨 앞 제외)
            if (count % 3 == 0 && i > 0) {
                result.insert(0, ",");
            }
        }

        // 최종 결과 문자열 반환
        return result.toString();
    }
}

2. 소스 코드 설명

위 Java 코드는 다음과 같은 구성으로 되어 있습니다.

  1. main 함수에서는 사용자로부터 입력받은 문자열을 처리합니다.
  2. isValidNumber 함수는 주어진 문자열이 숫자로만 구성되어 있는지 확인합니다.
  3. addCommas 함수는 문자열에 천 단위 콤마를 추가하여 반환합니다.

3. 프로그램 실행 및 결과

프로그램을 실행한 후, 변환시킬 숫자를 입력하면 천 단위 콤마가 추가된 결과가 출력됩니다.

예시)

변환시킬 숫자를 입력하세요... => 1234567
변환 결과 : 1,234,567

이상으로 Java로 작성된 천 단위 콤마 찍기 프로그램을 소개하였습니다. 이 프로그램을 활용하여 숫자를 보다 가독성 높게 표현할 수 있습니다.

VisualAcademy Docs의 모든 콘텐츠, 이미지, 동영상의 저작권은 박용준에게 있습니다. 저작권법에 의해 보호를 받는 저작물이므로 무단 전재와 복제를 금합니다. 사이트의 콘텐츠를 복제하여 블로그, 웹사이트 등에 게시할 수 없습니다. 단, 링크와 SNS 공유, Youtube 동영상 공유는 허용합니다. www.VisualAcademy.com
박용준 강사의 모든 동영상 강의는 데브렉에서 독점으로 제공됩니다. www.devlec.com