定义一个数组,里面有10个元素,然后我想随机取10个元素中的4个,求方法.(android ,java都行)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了定义一个数组,里面有10个元素,然后我想随机取10个元素中的4个,求方法.(android ,java都行)相关的知识,希望对你有一定的参考价值。
简单点的,每次生成一个随便数(0-9),然后用这个下标到数组中去取数,取出来后判断是不是取过了,如果已经取过了,丢弃它,重新再取,总会得到4个的.也可以每次生成两个随机数(0-9),然后交换数组中这两个下标的数值,多交换几次,那么数组就是混洗开了,取混洗后的数组的前四个数就行. 参考技术A Random类 java.util.Random类是基于 线性同余 算法的一种伪随机数序列生成器
new Random().nextInt(10);产生一个不大于10的随机数
注Math中有个random()方法 随机生成大于等于0小于1的double数
得到随机数直接根据下标取数组值就是 参考技术B String[] arg = "a" ,"b" ,"c" ,"d" ,"e" ,"f" ,"g" ,"h" ,"i" ,"j";
List<Integer> list = new ArrayList<Integer>();
Random rand = new Random();
int rom = rand.nextInt(10);
//循环四次
for (int i = 0; i < 4; i++)
boolean flag = false;
//无限循环
for (int k = 1;k == 1;)
rom = rand.nextInt(10);
if (list.size() > 0)
//循环list作比较
for (int j = 0; j < list.size(); j++)
if (rom == (int)list.get(j))
break;
if (j == (list.size()-1) && rom != (int)list.get(j))
flag = true;
else
flag = true;
if (flag)
break;
list.add(rom);
String s = new String();
s = arg[rom];
System.out.println(s); 参考技术C import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class Test2
/**
* @param args
*/
public static void main(String[] args)
int[] num=1,2,3,4,5,6,7,8,9,10;
Map map=new HashMap();
while(true)
int j=(int)(0+Math.random()*(9+1-1));
if(map.size()>3)
break;
map.put(j, j);
Set set=map.keySet();
Iterator it=set.iterator();
while(it.hasNext())
System.out.println("随机元素是>>>:"+num[(Integer)map.get(it.next())]);
delphi中能不能把一维数组作为一个元素赋值给另外一个数组?
我定义了六个一维数组arr1,arr2..arr6,里面存的是rgb值,它们长度不同。同时有六个checkbox,36个shape(每六个一组)。现在我想根据checkbox选中与否决定调用哪个数组来给shape赋颜色值,比如说有两个checkbox被选中,那就用对应的两个数组给前两层shape(1-12)赋颜色值。这个怎么实现?我想定义一个动态数组sarr,哪个checkbox选中就把对应的arr作为整体赋值个给它作为一个元素,这样有办法实现吗?
参考技术A 你可以把checkbox和shape都放在数组中,这样就可以依据索引号来创建checkbox与shape的对应关系比如是checkbox[0-5]
shape[0-35] (当然这里用二维数组也行,看你需要了)
这样对于一个比如说index=2,checkbx[2]就是对应的checkbox,而shape[2*6]至shape[2*6+5]就是对应的shape,循环中就很容易处理了,至于你说的arr1什么的,我不清楚你说的长度不同是什么,一样是可以用二维数组来处理的(当然如果每行的列数可能不同,那也可以用非矩形二维数组)
以上是关于定义一个数组,里面有10个元素,然后我想随机取10个元素中的4个,求方法.(android ,java都行)的主要内容,如果未能解决你的问题,请参考以下文章