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

调用random.nextInt()时,返回一个数字的次数比其他数字多[closed]

韦知
2023-03-14

在这个例子中我做错了什么?

正如你所看到的,NumOf3s的高度是1.5米,而其余的几乎是一半。我的代码中有什么东西导致了这一切的发生吗?

int numOf1s = 0, numOf2s = 0, numOf3s = 0, numOf4s = 0;
    Random random = new Random();
    int currentNum;
    
    while(true) {
        
        currentNum = random.nextInt(4) + 1;
        
        switch (currentNum) {
        case 1: 
            numOf1s++;
            break;
        case 2:
            numOf2s++;
        case 3: 
            numOf3s++;
            break;
        case 4:
            numOf4s++;
            break;
        default:
            break;
    
        }
            
    System.out.println("NumOf1s: "+ numOf1s + ", NumOf2s: "+ numOf2s + ", NumOf3s: "+ numOf3s + ", NumOf4s: "+ numOf4s);
        
}

共有1个答案

雍骏俊
2023-03-14

您的情况2:块缺少中断。因此,每次骰子掷出2时,都要增加numof2snumof3s,这就解释了为什么numof3s如此大。你实际上是在看“2或3的滚动频率”,而不是“3的滚动频率”。

注意:粘贴的代码不起作用-while循环永远不会退出,因此打印永远不会触发。

 类似资料:
  • 问题内容: 是否有可能具有两个返回的函数,如下所示: 如果是这样,我如何才能分别获得每份退货? 问题答案: 无法返回两个变量。虽然,您 可以 传播一个数组并返回它;创建条件以返回动态变量,等等。 例如,此函数将返回 在应用中: 如果您都想要它们,可以稍微修改一下功能

  • 问题内容: public class Return { public static void main(String[] args) { int answer = digit(9635, 1); print(“The answer is ” + answer); } 创建一个使用称为 digit 的函数的程序,该函数从整数参数的右边返回第n个数字的值。n的值应该是第二个参数。 例如:return

  • 我想从两个数字创建一个序列,这样其中一个数字的出现次数减少(从减少到1),而另一个数字的出现次数固定在。 我一直在四处寻找并尝试使用seq和rep来做这件事,但我似乎不明白。 下面是和,的一个例子: 这里是和,:

  • 本文向大家介绍PowerShell函数一次返回多个返回值示例,包括了PowerShell函数一次返回多个返回值示例的使用技巧和注意事项,需要的朋友参考一下 本文介绍在自定义PowerShell函数时,如何让函数返回值,如何接收返回值,如何让不相干的内容不放到返回值数组中。 PowerShell函数体中的任何输出,一般来说,都会以返回值的形式返回给函数调用者。多个输出的内容是放到一个返回值数组中的。

  • 问题内容: 实际返回的数字代表什么? 该文档。州: 返回this中的字形数量。此范围的字形代码从到。 我认为它代表0之间的代码点的数量为其返回。但是下面的代码输出表明不是这样。 码 注意:在这里,要通过超过100 万个代码点(该方法)处理200多种字体,则需要30秒钟左右。运行时请耐心等待。 输出量 此输出来自基于Windows 7的PC。GUI表中显示的第一列已拖到最后一列(以实现更好的列对齐)

  • 最近,我一直在尝试构建一个程序,它可以完成4件事: 1) 从键盘输入一个单词。 2)用包含字母表字母的字符串的上下文检查这个单词的上下文。 3)将给定单词的字母与字母表字符串的字母进行比较,只要匹配,它将返回该字母在字母表字符串中的位置1。(例如。word='a'位置=1,因为'a'是第一个字母) 4) 获取所有这些位置的总和。(例如word='abc'总计=6) 现在让我向您展示我用代码编写的内