Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 尝试调用另一个类中的号码并通过jlabel显示该号码_Java_Swing_Gaussian - Fatal编程技术网

Java 尝试调用另一个类中的号码并通过jlabel显示该号码

Java 尝试调用另一个类中的号码并通过jlabel显示该号码,java,swing,gaussian,Java,Swing,Gaussian,您好,我这里有一个小问题,我试图调用另一个类中生成的随机数,并通过jlabel在第二个类(jform)中显示它,我有点迷路了。生成的数字是双倍的。 代码 我在jfield上得到的数字是在“double number”中初始化的0,但我想得到在GaussianGenerator类中生成的数字。 感谢您的关注和时间,感谢您的帮助 num是数字生成器的一个实例。您应该通过调用number generator对象实例上的方法并将其分配给number来设置number的值。像这样(我不熟悉你的其他课程):

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

我在jfield上得到的数字是在“double number”中初始化的0,但我想得到在GaussianGenerator类中生成的数字。
感谢您的关注和时间,感谢您的帮助

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

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

numer=num.GaussianGenerator()

在Java中,如果您正试图这样做,则不能通过引用传递原语。但是,您可以对对象(例如Double)执行此操作,但这是一种糟糕的设计,因为Double就足够了。您还应该阅读一本关于Java编码约定的好教程,以便学习如何正确命名和大写方法。因此,您会发现这是更好的编码:

number = num.getNextValue();

GaussianGenerator类是否返回值?你不应该给这个方法赋值吗?我实际上是在调用一个方法,但是你确认相同的类名和方法名会产生干扰吗??公共类高斯发生器{公共双高斯发生器(双倍数){是的,错误是您正在传入一个原语并试图设置它的值,这是您无法做到的,并且为什么调用后它的值仍然为零。您必须返回原语。该方法的名称和大写不正确,但这是一个旁白。似乎我们都有相同的想法,尽管类和方法名称是相同的可能会导致问题。All now solver我刚刚重命名了方法名称,现在它可以正常工作:)实际上,Java编译器允许您将方法命名为与构造函数相同的名称。大多数编译器会用警告标记它,但这是允许的。当然,这样做不是一个好主意。您的问题是,您试图将传递的pr分配给是的,而不是返回值并将其分配给原语。好吧,NetBeans甚至懒得用警告来标记它;)无论如何,谢谢你的时间:)谢谢
GaussianGenerator num = new GaussianGenerator();//calling another class
CriminalDetails() 
{
    initComponents();
    double number = 0;
    number = num.getNextValue();
    CriminalID.setText(Double.toString(number));//CriminalID jfield
}
number = num.getNextValue();