2016-09-15 1 views
-1

OK 문자열이 하나이고 int가 하나 인 배열이 두 개 있습니다. 문제는 javafx에서 barchart를 사용하고 있습니다. 이제 배열이 비어 있지 않습니다. 그러나 Launch (args) 명령문이 메인 메소드에서 실행되면, 그것들을 널 (null)과 0 값으로 바꾼다.Javafx는 실행 (args)을 시작한 후 값을 변경합니다.

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

여기서 test()를 실행하면 내 두 배열의 값이 표시됩니다. 나는 barchart에 그 값들을 추가하기 직전에 또 다른 테스트()를했다. 그러나 갑자기 그들은 널 (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 

답변

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(); 
} 
+0

시도는 의미가 있습니다. –

+0

귀하의 질문에 대한 답변이 정확하다면 그것을 표시하십시오. 그렇지 않으면 다시 게시하고 어떤 일이 발생하는지 알려주십시오. –

+0

Thnx 작동하지만 이해하지 못했습니다. 아마 나는 그것에 대해 더 많이 조사해야한다. –

관련 문제