How to random (shuffle) array of integers in Java

1 Answer

0 votes
import java.util.Arrays;
import java.util.Random;

public class MyClass {
    private static void swap(int[] arr, int i, int j) {
		int tmp = arr[i];
		
		arr[i] = arr[j];
		arr[j] = tmp;
	}

	public static void shuffle(int arr[]) {
		for (int i = arr.length - 1; i >= 1; i--) {
			Random rand = new Random();
			int j = rand.nextInt(i + 1);
			swap(arr, i, j);
		}
	}
    public static void main(String args[]) {
        int[] arr = { 1, 2, 3, 4, 5, 6, 7 };

		shuffle(arr);

		System.out.println(Arrays.toString(arr));
    }
}


/*
run:

[7, 4, 1, 6, 3, 5, 2]

*/

 



answered Feb 24, 2019 by avibootz

Related questions

1 answer 180 views
1 answer 161 views
2 answers 172 views
172 views asked Nov 8, 2023 by avibootz
2 answers 162 views
162 views asked Oct 30, 2021 by avibootz
1 answer 104 views
104 views asked Mar 18, 2023 by avibootz
5 answers 358 views
...