启动启动后,Javafx会更改值(args)

时间:2016-09-15 03:16:14

标签: java arrays javafx

好的我有两个数组,一个是字符串,另一个是int。问题是我在javafx中使用barchart。现在没有数组是空的。但是在声明Launch(args)在main方法中运行后,它将它们变为null和零值。

public static void main(String[] args) {
    HistoGui BH = new HistoGui();
    BH.dataProcessor();
    BH.test();
    launch(args);
}

这里当我运行test()时,它显示了我的两个数组的值。我在barchart中添加这些值之前放了另一个test()。但突然间他们转换为null和零

char a = 'A';
    test();
    for(int i=0; i<26; i++){
        series1.getData().add(new XYChart.Data(Character.toString(a), 5));
        a++;
    }

这是输出

Total Characters = 65872
A  7
B  3
C  5
D  2
E  4
F  3
G  2
H  4
I  12
J  1  
K  0
L  2
M  3
N  4
O  3
P  3
Q  0
R  3
S  7
T  11
U  1
V  1
W  4
X  0
Y  1
Z  0
null  0  
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0
null  0

1 个答案:

答案 0 :(得分:0)

您正在错误的位置初始化您的商品。您应该将这些调用放在init方法或start方法中,具体取决于您对它们的用途。有关Javafx应用程序生命周期的信息,请参考https://docs.oracle.com/javase/8/javafx/api/javafx/application/Application.html

编辑1:

尝试

public void init(){
    HistoGui BH = new HistoGui();
    BH.dataProcessor();
    BH.test();
}