【发布时间】:2013-07-05 09:56:07
【问题描述】:
我是安卓新手。我正在做测验应用程序。我有一个 JSON 数组文本文件。如何在 android 中使用 JSON 数组生成不重复的随机数。请帮助我 谢谢推荐。。 这是我的示例代码
public static JSONArray getQuesList()throws JSONException{
ArrayList<Integer> list = new ArrayList<Integer>(size);
for(i =size - 1; i >= 0; i--) {
//index = rnd.nextInt(list.size());
list.add(i);
}
Random rand = new Random();
while(list.size() > 0) {
index = rand.nextInt(list.size());
Object object = quesList.get(index);
quesList.put(index, quesList.get(i));
quesList.put(i, object);
Log.d("","Selected: "+list.remove(index));
}
return quesList;
【问题讨论】:
-
为什么不将
rnd.nextInt(i + 1)加载到整数数组中,然后在子循环中检查新生成的是否存在于其中?如果是,则生成一个新的,如果不是 - 使用当前的。 -
swap 已经随机了为什么还要问?我改变我的答案。试试吧。它对我有用。