JAVA

Java에서 Array와 List를 섞는 방법 (Shuffle)

TedDev 2024. 7. 25. 23:01
728x90

자바에서 배열(Array)와 리스트(List)를 섞는(shuffle) 방법을 알아보겠습니다. 이 작업은 주로 컬렉션의 요소들을 무작위로 재배열하고 싶을 때 유용합니다. 자바에서는 이러한 작업을 쉽게 할 수 있는 방법을 제공합니다. 이번 포스트에서는 java.util.Collections 클래스를 이용하여 리스트를 섞는 방법과 배열을 리스트로 변환한 후 섞는 방법을 다루겠습니다.

 

 

List를 섞는 방법

리스트를 섞는 방법은 매우 간단합니다. 자바에서는 java.util.Collections 클래스의 shuffle 메서드를 사용하면 됩니다.

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

public class ListShuffleExample {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        for (int i = 1; i <= 10; i++) {
            list.add(i);
        }

        System.out.println("Before shuffle: " + list);
        Collections.shuffle(list);
        System.out.println("After shuffle: " + list);
    }
}

위 예제에서는 ArrayList에 1부터 10까지의 정수를 추가한 후, Collections.shuffle 메서드를 사용하여 리스트의 요소들을 무작위로 섞습니다. 결과를 출력하면 리스트가 섞인 것을 볼 수 있습니다.

 

Array를 섞는 방법

배열은 Collections.shuffle 메서드를 직접 사용할 수 없기 때문에 배열을 리스트로 변환한 후 섞어야 합니다. 배열을 리스트로 변환하기 위해 Arrays.asList 메서드를 사용할 수 있습니다.

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class ArrayShuffleExample {
    public static void main(String[] args) {
        Integer[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

        System.out.println("Before shuffle: " + Arrays.toString(array));
        List<Integer> list = Arrays.asList(array);
        Collections.shuffle(list);
        System.out.println("After shuffle: " + Arrays.toString(array));
    }
}

위 예제에서는 배열을 리스트로 변환한 후 Collections.shuffle 메서드를 사용하여 리스트를 섞습니다. 리스트를 섞으면 원본 배열도 같이 섞이게 됩니다.

 

결론

자바에서 배열이나 리스트를 섞는 것은 Collections.shuffle 메서드를 이용하여 간단하게 처리할 수 있습니다. 리스트는 바로 섞을 수 있으며, 배열은 리스트로 변환한 후 섞어야 합니다. 이러한 방법을 사용하면 컬렉션의 요소들을 손쉽게 무작위로 재배열할 수 있습니다.

 

반응형