簡體   English   中英

Android隨機活動,無需重復

[英]Android random activites without repetition

我正在開發一個問答游戲,在該游戲中,我必須隨機回答問題,以避免按相同順序回答問題。 我已經通過使用switch解決了這個問題

但是,問題在於我可能會回到已經回答的問題,因此現在我必須編寫一些代碼,以免玩家使用隨機數生成器來處理先前的問題。

到目前為止,我已經做到了;

  Random rand = new Random();
  int number = rand.nextInt(10);
  Intent intent = null;

       switch(number){
       case 0: intent = new Intent(MainActivity.this, Question001.class);
       break;
       case 1: intent = new Intent(MainActivity.this, Question002.class);
       break;

       //etc....
       }
       startActivity(intent);           

這會帶來隨機的單擊按鈕活動,但是我想禁用以前訪問的問題,這意味着,如果一個人回答了Question002類的問題,那么他一定不能(永遠也永遠不會)再次遇到這個問題,因為這將導致他從先前的問題中獲得了加分。 如何僅一次單擊按鈕就可以隨機獲得問題,使問題不再出現? 希望我的問題能被理解。

每個問題都存儲在其自己的類中(Question001,Question002 .... Question009)

跟着這些步驟:

  1. 創建一個ArrayList(或簡單地為List),然后將所有問題添加到其中。 請記住,這僅包含改組的問題。 請勿將其用於任何其他目的。
  2. 然后使用Collections.shuffle(question)進行隨機播放。
  3. 首先提出問題(question.get(0));
  4. 回答之后,將其從列表中刪除。 這將確保不再顯示它。
  5. 重復步驟2-5,直到您的列表大小大於零。

讓我知道是否不清楚。

采用

ArrayList<Integer> number = new ArrayList<Integer>();
for (int i = 1; i <= 10; ++i) number.add(i);
Collections.shuffle(number);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM