본문 바로가기

언어/Java

[ Java ] 1~9까지 수로 중복되지 않은 8자리 숫자를 만드는 예제

반응형

Java로 1에서 9까지 중복되지 않은 숫자로 이루어진 8자리 숫자를 만드는 방법은 다음과 같습니다. 이를 위해 먼저 1에서 9까지의 숫자를 리스트에 저장하고, 이를 랜덤하게 섞어서 8자리 숫자를 만드는 방법을 사용합니다.

다음은 그 예제 코드입니다:

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class UniqueEightDigitNumber {
    public static void main(String[] args) {
        // 1부터 9까지의 숫자를 리스트에 추가
        List<Integer> digits = new ArrayList<>();
        for (int i = 1; i <= 9; i++) {
            digits.add(i);
        }

        // 리스트를 랜덤하게 섞음
        Collections.shuffle(digits);

        // 첫 8개의 숫자를 선택하여 8자리 숫자 생성
        StringBuilder eightDigitNumber = new StringBuilder();
        for (int i = 0; i < 8; i++) {
            eightDigitNumber.append(digits.get(i));
        }

        // 결과 출력
        System.out.println("Generated 8-digit number: " + eightDigitNumber.toString());
    }
}

설명

  1. 숫자 리스트 생성:
    • List<Integer> digits = new ArrayList<>();를 사용하여 1에서 9까지의 숫자를 리스트에 추가합니다.
  2. 리스트 섞기:
    • Collections.shuffle(digits);를 사용하여 리스트의 요소들을 랜덤하게 섞습니다.
  3. 8자리 숫자 생성:
    • StringBuilder를 사용하여 첫 8개의 숫자를 선택하여 8자리 숫자를 생성합니다.
  4. 결과 출력:
    • System.out.println("Generated 8-digit number: " + eightDigitNumber.toString());를 사용하여 생성된 8자리 숫자를 출력합니다.

이 코드는 리스트를 사용하여 1에서 9까지의 숫자를 섞고, 이를 이용해 중복되지 않은 8자리 숫자를 생성합니다. 매번 실행할 때마다 다른 숫자가 생성됩니다.

반응형