Java では、生成された乱数を非繰り返しにするために、生成された乱数を配列に入れることができます。乱数が生成されるたびに、それを配列の内容と比較して、乱数が重複していないかどうかを確認します。等しい場合は再生成する 等しくない場合は再生成する を配列に格納します。
サンプル コードは次のとおりです (10 以内で 4 つの等しくない整数を生成します): (推奨される学習: java course)
public class Demo { public static void main(String[] args) { int[] a = new int[]{-1,-1,-1,-1};//初始化数组 Random random = new Random(); int count = 0;//记录有效的随机数个数 while(count < a.length){ boolean flag = true;//用来标志的变量 int r = random.nextInt(10); for(int i=0;i<a.length;i++){ if(r == a[i]){ flag = false; break; } } if(flag){ a[count] = r; System.out.println(r); count++; } } } }
変数 flag は、生成された乱数が既に存在するかどうかをマークするために使用されます。デフォルト値は true (存在しないことを意味します) に設定されており、flase は、乱数が存在することを意味します。乱数はすでに存在します。
以上がJava は非反復乱数を生成しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。