随机骰子模拟器

时间:2013-12-02 11:46:26

标签: java random die

你好stackoverflow你总是很好,乐于助人。 我的随机模拟器遇到了另一个编译问题;

public class dieSimulator
{
    public static void main(String[] args)
    {
        die();
    }
    public static int die()
    {
        generator.nextInt(6)+1;
    }
}

基本上应该在每次运行程序时生成1到6之间的随机int。

任何帮助将不胜感激,谢谢!

编辑: 谢谢,这是我当前的代码,仍然给我编译错误: 错误:找不到符号         return generator.nextInt(6)+1;                ^   符号:变量生成器

public class dieSimulator
{
    public static void main(String[] args)
    {
        int rollValue = die();
        System.out.println(rollValue);
    }
    public static int die()
    {
        return generator.nextInt(6)+1;
    }
}

我正在阅读的这本书告诉我“,调用generator.nextInt(6)给你一个0到5之间的随机数。”

编辑结束; 使魔术发生的最终代码

    import java.util.Random;

public class dieSimulator
{
    public static void main(String[] args)
    {
        int rollValue = die();
        System.out.println(rollValue);
    }
    public static int die()
    {
        Random generator = new Random();
        return generator.nextInt(6)+1;
    }
}

2 个答案:

答案 0 :(得分:5)

您需要return生成的值,因为die()的返回类型为int,但方法中没有return语句,从而引发编译错误。

public static int die()
{
    return generator.nextInt(6)+1; // return the value
}

你需要在调用者方法中将返回的值赋给某个​​int变量(以便以后可以使用)。

public static void main(String[] args)
{
    int rollValue = die();
    // Do something with rollValue 
}

  

Q值。谢谢,这是我当前的代码,仍然给我编译错误:错误:找不到符号返回generator.nextInt(6)+1; ^符号:变量生成器

由于您没有在班级中的任何位置定义generator,因此无法找到它。它应该在你的班级中定义。像这样的东西

public class dieSimulator
{
    Random generator = new Random(); //Just as an example
    ...

答案 1 :(得分:1)

你错过了回复陈述..

public static int die()
{
    return generator.nextInt(6)+1;
}