2017-06-22 25 views
0

所以我們被分配去創建一個包含5個方法的程序。用戶需要在終端上輸入一個號碼,該號碼將成爲所有方法將使用的公共變量。如何在處理參數時使用static int變量?

我知道

靜態INT NUM =的Integer.parseInt(參數[0])

將用於掃描將使用哪個編號的行。我的問題來自我將如何使用上述線。它給了我一個錯誤,當我把它的主要方法之外,我不能將它用於非主要方法

回答

0

靜態INT NUM =的Integer.parseInt(參數[0])

你將使用此行獲得編譯時錯誤,因爲您不能有本地靜態變量

你應該這樣做,而不是:

static int num; 
public static void main([]args){ 
    num = Integer.parseInt(args[0]); 

    // Then use num where you want. 
} 
+0

它的工作!非常感謝! – salmonade

0

你的類應該是這樣的

public static void main(String [] args) { 

    Scanner scan = new Scanner(System.in); 
    System.out.println("enter number"); 
    // this variable does not need to be static, local is better 
    int myNum = scan.nextInt(); 
    Main main = new Main(); 
    main.method1 (myNum); 
    main.method2 (myNum); 
    main.method3 (myNum); 
    main.method4 (myNum); 
    main.method5 (myNum); 
} 

private void method1(int myNum) { 
} 

// repeat for each new method 
+0

@ Neeraj-Jain感謝您的編輯 –

0

爲什麼你不能寫該行以外的方法主要是因爲args超出的原因那裏的範圍。因此,您應該做的是聲明nummain之外,然後指定它在main之內。

main

static int num; 

main

num = Integer.parseInt(args[0]); 
相關問題