본문 바로가기

Java/java 기초

카드 위치 바꾸기 (메소드 화)

public class ex02 {
	public static void main(String[] args) {
//		메소드명 : shuffle
//		기 능 : 주어진 배열에 담긴 값의 위치를 바꾸는 작업을 반복하여 뒤섞이게 한다.
//		처리한 배열을 반홖한다.
//		반환타입 : int[]
//		매개변수 : int[] arr – 정수 값이 담긴 배열

		/*
		 * (1) shuffle메소드를 작성하시오.
		 */
		int[] original = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
		System.out.println(java.util.Arrays.toString(original));
		int[] result = shuffle(original);
		System.out.println(java.util.Arrays.toString(result));
		
	}
	
	public static int[] shuffle(int[] arr) {
		int temp;
		for(int i = 0; i < 1000; i ++) {
			int r1 = (int)(Math.random() * arr.length);
			int r2 = (int)(Math.random() * arr.length);
			temp = arr[r1];
			arr[r1] = arr[r2];
			arr[r2] = temp;
		}
		return arr;
	}
}