试图从另一个类调用一个数字并通过jlabel显示它

时间:2013-01-12 00:08:50

标签: java swing gaussian

你好我在这里有一点问题,我试图调用另一个类中生成的随机数,并通过第二类(jform)中的jlabel显示它,我有点迷失。数字生成是双倍的。 代码

GaussianGenerator num = new GaussianGenerator();//calling another class
CriminalDetails() 
{
    initComponents();
    double number = 0;
    num.GaussianGenerator(number);
    CriminalID.setText(Double.toString(number));//CriminalID jfield
}

进入jfield的数字是在“双数”中初始化的0,但我想得到GaussianGenerator类中生成的数字。 感谢您的光临,感谢您的光临。

1 个答案:

答案 0 :(得分:1)

num是数字生成器的一个实例。您应该通过调用数字生成器对象的实例上的方法并将其分配给数字来设置数字的值。像这样(我不熟悉你的其他课程):

GaussianGenerator num = new GaussianGenerator();//calling another class
CriminalDetails() 
{
    initComponents();
    double number = 0;
    number = num.getNextValue();
    CriminalID.setText(Double.toString(number));//CriminalID jfield
}

或者GaussianGenerator也是该方法的名称?从设计的角度来看,这是个坏主意。该方法不应该将其作为参数传递给方法,而应该只返回生成的值:

numer = num.GaussianGenerator();

在Java中,如果您正在尝试执行此操作,则无法通过引用传递基元。但是,您可以使用对象(例如Double)执行此操作,但这样做很糟糕,因为double就足够了。您还应该阅读有关Java编码约定的优秀教程,以便了解如何正确命名和大写方法。所以你会发现这是更好的编码:

number = num.getNextValue();