Java では、生成された乱数を非繰り返しにしたい場合は、生成された乱数を配列に入れて、それぞれを配列することができます。乱数生成時に配列の内容と比較して等しいかどうかを確認し、等しい場合は再生成し、等しくない場合は配列に格納します。 (推奨学習: java コース )
サンプル コードは次のとおりです (10 以内で 4 つの等しくない整数を生成します):
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 サイトの他の関連記事を参照してください。