利用随机函数创建一个不重复的数组

利用随机函数创建一个不重复的数组

import java.util.Random; //导入的随机函数类

public class RandomTest {

public static void main(String[] args) {
  Random random = new Random(); //随机函数Random
  int[] arr = new int[10]; //生成10个不重复的随机数
  int index = 0; //用来记录数组下标

  while(index < arr.length) { //用作循环结束判断条件
    int num = random.nextInt(11); //随机生成一个1~10之间的数,在此只能够给定一个大于等于数组长度的随机数,否则该数组永远填不满,程序便会进入死循环
    if (!RandomTest.contains(arr, num)) {     //调用静态方法验证数组中是否存在这个数

    //如果数组中不存在该数,则将该数添加至数组 index++ 位置
    arr[index++] = num;
    }
  }

  for (int i = 0; i < arr.length; i++) { //冒泡排序
    for (int j = arr.length – 1; j > i; j–) {
      if (arr[j – 1] > arr[j]) {
        int temp = arr[j – 1];
        arr[j – 1] = arr[j];
        arr[j] = temp;
      }
    }
  }
  for (int i : arr) { //foreach循环遍历数组打印输出
    System.out.print(i + ” “);
  }

}

public static boolean contains(int[] arr, int key) {
  for (int i = 0; i < arr.length; i++) {
    if (arr[i] == key) { //如果该数在数组中已经存在则直接返回true
      return true;
    }
  }
  return false;
  }

}

 

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 利用随机函数创建一个不重复的数组