78 求随机数 不重复的值
package com.fqs.test; import java.util.Random; import java.util.Scanner; public class hello { public static void main(String[] args) { //获取三个不相等的随机数 int weishu=6; getNo(weishu); } /*//获取一个4位随机数的数组 public static int[] getNum() { Random r=new Random(); int []arrNum=new int[4]; for(int i=0;i<4;i++){ int num=r.nextInt(4); arrNum[i]=num; } return arrNum; }//获取数组*/ /* //判断数组中是否有重复的 public static void isFind(int arrNum[]) { boolean isFind=false; int count=0;//相等的次数 for (int i = 0; i < 4; i++) { for (int j = 0; j < i; j++) { if(arrNum[i]==arrNum[j]){ count++; isFind=true; } } } if(count==0){ System.out.println("没有重复的"); } else{ System.out.println("有重复的"); } }//判断重复*/ //获取一个不重复的 位随机数 public static void getNo(int weishu) { Random r=new Random(); int []arr=new int[weishu]; int temp=r.nextInt(100);//第一个随机数 System.out.println("第一个随机数temp:"+temp); arr[0]=temp;//将第一个随机数放到数组中 下标0 for (int i = 1; i <weishu; ) { int temp2=r.nextInt(100);//第二个随机数 System.out.println("--其他随机数:"+temp2); boolean isFind=false;//在外循环与内循环之间设置isFind for (int j = 0; j <i ; j++) { if(temp2==arr[j]){//内循环里做值之间的比较 isFind=true; break; } } //跳出内循环 在外循环里写将值赋值到数组中 if(!isFind){ arr[i]=temp2; i++; } } for (int i = 0; i < arr.length ; i++) { System.out.println("----------------"); System.out.println("arr2["+i+"]:"+arr[i]); } }//结束找 }//类结束