인터넷을 뒤져보지 않고 고민해서 만들었는데, 코드를 구현해보고 답지를 찾아보니 아쉬움이 많이 듭니다. 그래도 족적을 남기기 위해서 글 작성합니다.

import java.util.Arrays;

public class Ex01 {

	public static void main(String[] args) {
		// 1부터 45까지의 배열 생성
		int[] arr = new int[45];
		for(int i = 1; i < 46; i++) {
			arr[i - 1] = i; 
		}	
		//System.out.println(Arrays.toString(arr));

		// 배열에서 숫자 하나씩 가져옴. 가져온 숫자는 원래 배열에서 사라짐
		int[] lotto = new int[6];
		int temp;
		int times = 0;
		while(times < 6 ) {
			temp = (int)(Math.random() * arr.length);
			System.out.println(temp);
			lotto[times] = arr[temp];
			int[] arr1 = new int[arr.length - 1];
			for(int j = 0; j < arr.length;j++) {
				if (temp==0 && j != arr.length -1) {
					arr1[j] = arr[j+1];
				}
				if (j < temp) {
					arr1[j] = arr[j];
				} else if(j > temp){
					arr1[j-1] = arr[j];
				}
			}
			arr = arr1;
			times++;
		}
		
		System.out.println(Arrays.toString(lotto));
		
	}

}