当前位置: 首页 > 知识库问答 >
问题:

如何从4个随机数中生成两个?

仲孙鸿畴
2023-03-14

我需要1、2、3和4中的两个随机数,但它们不能相同,我需要它们在两个不同的变量中。

比如rnd1=1 rnd2=3

我试图以经典的方式生成它们:int rnd=new Random()。nextInt(3)1 。对于另一个,也是这样,但如何确保它们不匹配?怎么做?


共有3个答案

邴景山
2023-03-14

最简单的方法可能是:

Random random = new Random();
int rnd1 = random.nextInt(3) + 1;
int rnd2;
do {
    rnd2 = random.nextInt(3) + 1;
} while (rnd1 == rnd2);
米俊喆
2023-03-14
Random random = new Random();
int rnd1 = random.nextInt(3) + 1;
int rnd2 = rnd1;
while(rnd2 == rnd1) {
    rnd2 = random.nextInt(3) + 1;
}
於意蕴
2023-03-14

与其自己实现随机性和唯一性,不如简单地用允许的数字填充一个列表,将其洗牌,然后获取前两个条目:

List<Integer> list = Arrays.asList(1, 2, 3, 4);
Collections.shuffle(list);
rnd1 = list.get(0);
rnd2 = list.get(1);
 类似资料:
  • 本文向大家介绍如何生成一个随机数?相关面试题,主要包含被问及如何生成一个随机数?时的应答技巧和注意事项,需要的朋友参考一下  

  • 我正在从Python速成班上攻克太空入侵者游戏。我正在使用Python 3.5和Pygame 1.9。2a0,groupcollide() 在原作中,当子弹与宇宙飞船碰撞时,两个精灵都会从屏幕上移除。 在我的版本中,我希望删除对我来说更随机,以便不是所有的点击都成功。我使用随机模块完成了这项工作,如果随机数低于某个阈值(n),则使碰撞成功。我已经在下面的代码中使用了这个函数,但是它没有按照我想要的

  • 我想从randomInts(int-num,int-start,int-end)中获取随机数,并将这些数放入数组。 我试着做

  • 问题内容: 有没有一种方法可以在JavaScript中生成指定范围内的随机数(例如1到6:1、2、3、4、5或6)? 问题答案: 重要 以下代码仅在最小值为时才有效。不适用于除以外的最小值。 如果要获得1( 且只有1 )和6 之间的随机整数,则应计算: 哪里: 1是起始号码 6是可能的结果数(1 +开始 (6) -结束 (1) )

  • 问题内容: 在java中如何生成随机数? 问题答案: 在Java 1.7或更高版本中,执行此操作的标准方法如下: 请参阅相关的JavaDoc。这种方法的优点是不需要显式初始化java.util.Random实例,如果使用不当,可能会引起混乱和错误。 但是,相反,没有办法明确设置种子,因此在有用的情况下(例如测试或保存游戏状态或类似情况),很难重现结果。在这种情况下,可以使用下面显示的Java 1.

  • 我想用骰子做一个游戏,我需要在其中加入随机数(以模拟骰子的侧面。我知道如何在1到6之间进行)。使用 不能很好地工作,因为当我运行程序几次时,我得到的输出是: 所以我想要一个每次都会生成不同随机数的命令,而不是连续5次生成相同的随机数。是否有命令可以执行此操作?