How to randomize an array in Java

2 Answers

0 votes
public class MyClass {
     public static void shuffle(int [] arr) {
        for (int i = 0; i < arr.length; i++) {
            int index = (int) (Math.random() * arr.length);
            
            int tmp = arr[i];
            arr[i] = arr[index];
            arr[index] = tmp;
        }
    }
    public static void main(String args[]) {
        int[] arr = {1, 2, 3, 4, 5, 6};
         
        shuffle(arr); 
  
        for (Integer n : arr) {
            System.out.printf("%2d", n);
        }
    }
}




/*
run:

 4 5 2 1 3 6

*/

 



answered Mar 28, 2021 by avibootz
0 votes
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class MyClass {
    public static void main(String args[]) {
        Integer[] arr = {1, 2, 3, 4, 5, 6};
         
        List<Integer> list = Arrays.asList(arr);

		Collections.shuffle(list);

		list.toArray(arr);

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




/*
run:

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

*/

 



answered Mar 28, 2021 by avibootz

Related questions

1 answer 104 views
104 views asked Aug 6, 2024 by avibootz
1 answer 124 views
2 answers 513 views
2 answers 199 views
199 views asked Feb 20, 2018 by avibootz
2 answers 176 views
3 answers 288 views
...