作业帮 > 综合 > 作业

JAVA 在一些数中随机取

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/18 04:56:34
JAVA 在一些数中随机取
有三个数1,2,3
A和B各在其中随机取一个,可以取重复
这可以Random r = new Random();
int A = r.nextInt(3);
但是C不能取A或者B取过的
所以C的可能选择就是1个数或两个数
我想用程序在这三个数中排除A和B的选择,再让C在剩下的数中随机选取,这段程序该如何写呢?
JAVA 在一些数中随机取
楼主程序有个错误
因为nextInt(n)返回的是0~n-1之中的整数,所以如果想返回1,2,3之中的随机数应该这样调用:
int A = r.nextInt(3)+1;
所以答案是
int C = r.nextInt(3)+1;
while(C == A || C == B) {
C = r.nextInt(3)+1;
}
一般加上这个循环就好了.
也可以向楼主所说的,从剩下的数中选:
Random r = new Random();
int A = r.nextInt(3)+1;
int B = r.nextInt(3)+1;

ArrayList l= new ArrayList();
l.add(1);
l.add(2);
l.add(3);
l.remove(new Integer(A));
l.remove(new Integer(B));

int C = l.get(r.nextInt(l.size()));