如何随机java字符串数组,表示每个数组都是真随机的



我有一个java字符串数组,它看起来像这样:

String [] cards = {"c1","c2","c3", , , , , , ,, , "c45"};

所以我有45个元素,现在我喜欢每次都把它们分解因此:

int[] cards2  = Arrays.copyOf(cards , cards .length);
random(cards2);

随机函数应该是什么样子?

您可以使用

Collections.shuffle(Arrays.asList(cards));

如果您想复制到一个新数组,可以使用它。

public String[] randome(String[] arr) {
   Random rgen = new Random();
   String[] randArray = new String[arr.length];
    System.arraycopy(arr, 0, randArray, 0, arr.length);
   for (int i = 0; i < randArray.length; i++) {
    int randIn = rgen.nextInt(randArray.length);
    String temp = randArray[i];
    randArray[i] = randArray[randIn];
    randArray[randIn] = temp;
    }
    return randArray;
 }

最新更新