public void creatLottoNumber() {
// 로또번호 생성기
// [6, 12, 16, 20, 21, 42]
// 1. 1 ~ 45 사이 중복되지 않는 난수 6개 생성 => Math.random()
// 2. 생성된 난수가 오름차순으로 정렬 => Arrays.sort()
// 1) 정수 6개를 저장할 배열 선언 및 할당
int[] lotto = new int[6];
// 2) 생성된 배열을 처음부터 끝까지 순차 접근하는 for문 작성
for(int i = 0; i < lotto.length; i++) {
// 3) 1 ~ 45 사이의 난수생성
int random = (int)(Math.random() * 45 + 1);
// 0.0 <= x < 1.0
// 0.0 <= x * 45 < 45.0
// 1.0 <= x * 45 + 1 < 46.0
// 1 <= (int)(x * 45 + 1) < 46
// 4) 생성된 난수를 순서대로 배열 요소에 대입
lotto[i] = random;
// 5) 중복 검사를 위한 for문 작성
for(int x = 0; x < i; x++) {
// 6) 현재 생성된 난수와 같은 수가
// 앞쪽 요소에 있는지 검사
if(random == lotto[x]) {
i--;
//i가 1씩 증가할 때 마다 난수가 하나 생성
// => 중복 값이 있으므로 난수를 새로 하나 더 생성해야함.
// --> i는 기본적으로 0~5까지 6회 반복되지만
// i값을 인위적으로 1 감소시켜서 7회 반복되는 모양을 만듦.
break;
// 앞쪽에서 중복 데이터 발견하면
// 남은 값을 비교할 필요 없음
// -> 효율 향상을 위해서 감사하는 for문 종료
}
}
} // for문 끝
Arrays.sort(lotto);
//결과 출력
System.out.println(Arrays.toString(lotto));
}
```