以整数集合为例,随机选取数字的代码如下:
int [] arr = {1,2,3,4};
//产生0-(arrlength-1)的整数值,也是数组的索引
int index=(int)(Mathrandom()arrlength);
int rand = arr[index];
简单点的,每次生成一个随便数(0-9),然后用这个下标到数组中去取数,取出来后判断是不是取过了,如果已经取过了,丢弃它,重新再取,总会得到4个的
也可以每次生成两个随机数(0-9),然后交换数组中这两个下标的数值,多交换几次,那么数组就是混洗开了,取混洗后的数组的前四个数就行
你可以在执行完 listaddAll(blankList)后,就执行shuffle *** 作,这个时候 选择题和填空题就是随机的了,然后再执行listaddAll(rootList)把应用题放进去就是了
这样的话 应用题之前的填空题和选择题是随机排序的,然后应用题在最后面
import javautilArrayList;
import javautilList;
import javautilRandom;
public class SelectNo {
public static void main(String[] args) {
//将1-35号码放入List集合
List<String> list = new ArrayList<String>();
for (int i = 1; i < 36; i++) {
listadd(""+i);
}
//新建一个List集合用来存放抽出来的号码
List<String> newList = new ArrayList<String>();
//随机抽取list集合中的一个元素,抽出后删除
Random rd = new Random();
int count = listsize();//集合中剩余号码
while (count > 0) {
int index = rdnextInt(count);//抽出的号码的位置
//放入新的集合
newListadd(listget(index));
//删除原有集合的元素
listremove(index);
count--;//原有集合少了一个
}
//输出号码
for (int i = 0; i < newListsize(); i++) {
Systemoutprint(newListget(i)+"\t");
//每五个换行
if(i%5 == 4){
Systemoutprintln("");
}
}
}
}
以上就是关于RF中怎样随机取list里的一个数全部的内容,包括:RF中怎样随机取list里的一个数、定义一个数组,里面有10个元素,然后我想随机取10个元素中的4个,求方法.(android ,java都行)、在java中,怎么将已经获取到的list随机排序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)