- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试创建一个程序,该程序将滚动 2 个不同的骰子,可以自动为 6 面或由用户决定的自定义面。截至目前,我已经走到这一步了,需要帮助弄清楚如何从 roll()
方法中实现任何事情,我已经尝试运行它并且它不会给我它应该的随机整数。
有什么想法吗?
import java.util.*;
import java.lang.*;
public class RollOfTheDice
{
public static void main(String[] args)
{ Die firstDie, secondDie, face;
firstDie = new Die();
secondDie = new Die();
face = new Die();
face.getSides();
firstDie.roll();
secondDie.roll();
System.out.println("First die roll results:.");
}
}
class Die
{
int numberOfSides; //field value
public Die() //constructor
{ numberOfSides = 6;
}
public int getSides()//get method
{ Scanner inputDevice = new Scanner (System.in);
System.out.println("If looking for a custom sided die, please enter number of sides now:");
numberOfSides = inputDevice.nextInt();
return numberOfSides;
}
public void setSides(int Sides) //setmethod
{
numberOfSides = Sides;
}
public int roll()
{
//return a random-generated integer value between 1 and amount of sides
int rollResult = ((int)(Math.random() * 100)% numberOfSides + 1);
return rollResult;
}
}
最佳答案
由于答案已被接受,我想我会给出一些建议;
public int getSides()//get method
{ Scanner inputDevice = new Scanner (System.in);
System.out.println("If looking for a custom sided die, please enter number of sides now:");
numberOfSides = inputDevice.nextInt();
return numberOfSides;
}
我建议不要在 getSides() 期间执行 IO,这会产生设置骰子面数的副作用。
相反,让 main 方法运行“askForSides”方法(其中包含扫描仪)。然后将此参数传递给 setSides() 方法。
其次,我建议您不要将当前的构造函数将边设置为固定的 6,而是将其替换为:
public Die() //constructor
{
numberOfSides = 6;
}
public Die(int sides) {
this.numberOfSides = sides;
}
更好的是(嗯,无论如何我喜欢它):
public Die() //constructor
{
this(6);
}
public Die(int sides) {
this.numberOfSides = sides;
}
这样,只有 1 个构造函数实际设置边,另一个构造函数只是提供默认值。从长远来看,这使得重构变得更加容易。
如果您有一个以侧面作为参数的构造函数,则可以使用它来代替 setSides 方法:)
关于java - 掷骰子程序,但我需要从不同的类传输输入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26298161/
我是 Java 新手,我正在尝试创建一个数组列表。 我制作了一个小程序,要求用户提供要掷的骰子数量: System.out.println("How many dices do you wan
我目前需要一些关于“简单”问题的建议。我正在构建一个游戏助手,用户可以在其中掷骰子(6 面骰子、20 面骰子等)。实际上,我只向用户显示号码。但是,为了更好用,我想在屏幕上显示骰子(例如,在带有自定义
我刚刚开始学习 Java 编程,并编写了一个程序来掷 x 面骰子 x 次。边数和卷数由用户输入定义。该程序以 JTable 格式给出每个数字的绝对频率和相对频率。一切都很顺利,直到您为侧面和卷数选择较
这段代码的用途:模拟100场CRAPS,记录第一轮输,第一轮赢,第二轮负加分,第二轮赢加分的#。 那些不熟悉掷骰子规则的人;您基本上掷两个骰子,如果结果不是 2、3 或 12 的总数,您可以再次掷骰(
所以我为龙与地下城创建了一个基本的掷骰子 dicord 机器人。 我到目前为止的代码可以掷任何类型的骰子,(例如“roll xdy”“roll 1d20”,“roll 100d100”) 当有人发送匹
我有一些关于java的问题。代码中有两个问题(我将它们作为注释留下)。另外使用设置和获取方法的目的是什么?您能简单地解释一下吗?我是初学者。谢谢:) public class Die { pri
尝试绘制 2 个骰子总和的 pmf,但出现一些右尾问题。 我尝试过使用 numpy 和其他 python 库,但问题仍然存在: import tensorflow as tf tf.enable_ea
当掷 2 个六面骰子时,最常见的结果应该是 7,而 2 和 12 是最不常见的结果。 当我执行下面的代码时,数字 12 的出现频率很高,这是错误的。 #include #include #incl
我正在尝试学习 Python 库 itertools,我认为一个好的测试是模拟掷骰子。使用 product 并使用 collections 库计算可能的方法数,很容易生成所有可能的滚动。我正在尝试解决
所以我做了这个掷骰子 100 次的方法,有 50% 的机会掷出 6。基本思想是 1 到 6 之间有 50% 的奇数和 50% 的偶数,所以如果掷出偶数,系统打印 6,否则打印 1 到 5 之间的随机数
我是 C++ 的初学者,这是家庭作业,但我卡住了。我还有一个问题,然后我就完成了。我想不出一种算法可以判断用户输入的是小直线 (1234) 还是 (2345) 还是 (3456)。我知道如何使用循环来
我是一名优秀的程序员,十分优秀!