如何在没有任何导入的情况下洗牌 N 大小的数组

How to shuffle an array of N size without any imports

目标是打乱一个 N 大小的数组。代码中不能使用导入。即随机

我可以使用如下所示的导入轻松做到这一点,尽管这些是被禁止的。

private static void shuffleArray(int[] array)
  {
      int index, temp;
      Random random = new Random();
      for (int i = array.length - 1; i > 0; i--)
      {
          index = random.nextInt(i + 1);
          temp = array[index];
          array[index] = array[i];
          array[i] = temp;
      }
  }

最终目标是以随机顺序打乱数组。伪随机完全没问题。

int []a = new int[]{1,2,3,4,5,6,7,8,9};
for (int i = 0 ; i < a.length; i++)
{
    int index = (int)(System.nanoTime() % a.length);
    int tmp = a[index];
    a[index] = a[i];
    a[i] = tmp;
}