我正在开发一个问答游戏,我必须在回答问题时进行随机活动,以避免按相同顺序出现问题。我已经通过使用解决了这个问题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 类中的问题,他一定不能(永远也永远)再次得到这个问题,因为这将导致他从之前的问题中获得了额外的分数。如何仅在单击按钮一次时随机收到问题,这样它们就不会再次出现?我希望我的问题能被理解。
每个问题都存储在自己的类中(问题 001、问题 002...问题 009)
按着这些次序:
- 创建一个 ArrayList(或简单的列表)并将所有问题添加到其中。请记住,这仅包含洗牌的问题。请勿将其用于任何其他目的。
- 然后使用 Collections.shuffle(question) 进行随机播放。
- 在上面提出问题 (question.get(0));
- 回答后将其从列表中删除。这将确保它永远不会再次显示。
- 重复步骤 2 - 5,直到列表大小大于零。
如果不清楚,请告诉我。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)