タイトル通り現在AndroidStudioでString qを r = new Random().nextInt(q.length);
((TextView) findViewById(R.id.situmon)).setText(q[r]);
でランダムに表示させているのですがこれだと同じ問題が何回も表示されます。なのでこの質問qを乱数で表示させつつ兆宇服させない方法を教えてもらえると幸いです。お願いいたします。
コード public class shindan extends AppCompatActivity { String[] q = { "質問1", "質問2", "質問3", "質問4", "質問5" "質問6", "質問7", "質問8", "質問9", "質問10", "質問11" }; String[] ta = {//回答 "1","2","3","4","5","6","7","8","9","10","11" };//+ String[] ba = {//回答 "1","2","3","4","5","6","7","8","9","10","11" };//- int r = 0;//乱数の保管 int count = 10;//問題数 int score=0;//スコア int n = 11; int[] indexes = getShuffledIndexes(n); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_shindan); r = new Random().nextInt(q.length); ((TextView) findViewById(R.id.situmon)).setText(q[r]); displayTop(); displayBottom(); for (int i = 0; i < n - 1; i++) { System.out.print(indexes[i] + ", "); } System.out.println(indexes[n - 1]); } public static int[] getShuffledIndexes(int n) { if (n <= 0) { return null; } int[] indexes = new int[n]; for (int i = 0; i < n; i++) { indexes[i] = i; } Random rand = new Random(); for (int i = n - 1; i >= 1; i--) { int j = rand.nextInt(i + 1); int tmp = indexes[j]; indexes[j] = indexes[i]; indexes[i] = tmp; } return indexes; }
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/21 16:19
2020/07/21 22:36
2020/07/22 12:47 編集
2020/07/22 16:15
2020/07/22 16:31
2020/07/23 07:28
2020/07/23 07:36 編集
2020/07/23 12:36
2020/07/23 21:52
2020/07/24 13:26
2020/07/24 22:44
2020/07/25 06:40