2017-03-01 149 views
0

這是我嘗試使其工作的java命令行參數的代碼,但它不允許我這樣做。Java命令行參數

我必須寫包含main方法和另一個類的方法(所以有在該類中的兩個類方法)的類。

主要方法調用其他類的方法和傳遞給它作爲參數轉換爲double三個命令行參數。

然後,類方法以特定的輸出格式返回三個中間數。

用戶將輸入三個數字,然後輸出到下面的數字類。

這是我的第一類,它被稱爲編號:

// import java.util.Scanner; 
    // import java.util.Arrays; 
    // import java.util.List; 
    // import java.util.ArrayList; 

    public class Numbers { 

     public Numbers() { 
     } 

     public static void main (String[] args) { 
      Middle.main(args); 
     } 
    } 

這是我所謂的中東和第二類這應該是與數字類從上面鏈接,它應該發陣列雙參數用戶輸入它,然後將其存儲並輸出回Numbers類。

public class Middle{ 

public void Middle() 
{ 
} 

public static void main(String[]args) 
{ 
    double num, i, j, temp; 

    double a,b,c; 
    a = Double.parseDouble(args[0]); 
    b = Double.parseDouble(args[1]); 
    c = Double.parseDouble(args[2]); 

    //USE COLLECTIONS.SORT OR BUBBLESORT 

    num = input.nextDouble(); 

    int array[] = new int[num]; 

    for (i = 0; i < num; i++) 
    array[i] = input.nextInt(); 

for (i = 0; i < (num - 1); i++) 
{ 
    for (j = 0; j < num - i - 1; j++) 
    { 
    if (array[j] > array[j+1]) 
    { 
     temp = array[j]; 
     array[j] = array[j+1]; 
     array[j+1] = temp; 
    } 
    } 
} 
    for (i = 0; i < num; i++) 
    System.out.println(array[i]); 


    if(args.length ==3) 
    { 
    System.out.println(b + " is between " + a + " and " + c); 
    } 
    else 
    { 
    System.out.println("Error");  
    } 
} 

}

我使用BlueJ的測試我的程序,並且該命令行參數用雙引號鍵入的支架內部和內部,即,{「5」,「6.3」,「3 「}。

我用冒泡然而,關於扶植保持是找不到符號法nextDouble()的錯誤。

如果沒有任何建議會有幫助,格式是否正確如我使用bubblesort的方式。

+0

這裏實際上沒有真正的邏輯。如果你的'if'條件固定爲'args.length == 3',那麼它會打印出你的中間號碼,並聲稱它在你的第一個和最後一個號碼之間。也就是說,你給這個程序輸出了什麼樣的輸出,你回來了什麼輸出? – Makoto

+0

這不是你如何傳遞參數給java。 'java -cp。數字5 6.3 3' –

+1

*我的代碼似乎不工作*。這是一個太模糊的描述。準確地告訴你在做什麼,你期望發生什麼,取而代之的是什麼。 –

回答

0

在主方法給出字符串數組ARGS自動界定由空格輸入,以便以具有字符串[] args.length = 3則需要輸入像5.7 8.6 22例如。您還可以在你的程序主要有兩種方法使他們中的一個人不應該有「主」來表示你的程序才能正常

0

String[] args包括參數用空格分開。所以,你想要的參數應該看起來像5 6.3 3,而不是{"5","6.3","3"}

嘗試使用System.out.println(Arrays.toString(args));得到了什麼是真正的ARG看起來像一個感覺。