2017-06-12 12 views
-4

私は3つの配列(質問、回答、正解)を持っており、まだ選択されていないランダムな質問を選んでいます。ランダム()を使用しましたが、質問が繰り返されていますが、どうすればこの問題を解決できますか? ありがとう!オブジェクトを繰り返さずに配列をランダム化するにはどうすればよいですか?

+2

は、この質問は回答されている[ここ](https://stackoverflow.com/questions/1519736/random-shuffling-of-an-array) –

+0

またwhile'ループ 'と' HashSet'を使用することができますtopはランダムな値を生成します。 –

+0

あなたがGoogleに必要な言葉は:順列 ' – nafas

答えて

0
Random rand = new Random(); //random number generator 
    Integer[] rand_number = new int[4]; //this array take 4 diferent number 
    int count = 0; 
    try { 
     while (count < 4) { 
      random_number = rand.nextInt(4) + 1; 
      int n = 0; 
      for (int i = 0; i < rand_number.length(); i++) { 
       if (random_number != rand_number[i]) { 
        n++; 
       } 
      } 
      if (n == rand_number.length()) { 
       rand_number[rand_number.length()] = random_number; 
       count++; 
      } 
     } 

    } catch (Exception e) { 
     Toast.makeText(getBaseContext(), e.toString(), Toast.LENGTH_LONG) 
     .show(); 
    } // now ypu get 4 random number it will be 0, 2, 3, 1 or 2, 0, 1, 3 or ... 

    //your random answers 
    String var1 = answers[rand_number[0]; 
    String var2 = answers[rand_number[1]; 
    String var3 = answers[rand_number[2]; 
    String var4 = answers[rand_number[3]; 
+0

ありがとう! –

+0

答えを有用とマークしてください –

関連する問題