2011-08-10 63 views
0

如何在args數組中打印出一組整數。 我打算的輸出:數字是1,2,3,4,5從輸出的參數中打印出一組整數:數字是1,2,3,4,5,0

System.out.println("The numbers are "); 
    for(int i=0; i< args.length;i++) 
    System.out.print(args[i] + " "; 

編譯器給我的一個錯誤「我不能被解析爲一個變量」當我解決它與「int b = 0;」它給了我一個整數,而不是參數中的整數

回答

3

從Java 5的,你也可以跳過i完全:

for(String arg : args) 
    System.out.print(arg + " "); 

此外,我想提倡甚至對於單語句塊使用大括號。 通過添加語句(如某些日誌語句),它更容易閱讀,並且不太可能通過添加語句來更改行爲。

實施例中,幼稚pow()方法(檢查跳過爲簡單起見):

一部開拓創新碼:

int pow(int base, int power) { //assume power to be > 1 
int result = base; 

for(int i = 1; i <= power; i++) 
    result *= base; 

return result; 
} 

現在,我想記錄的結果中的每個步驟:

int pow(int base, int power) { //assume power to be > 1 
    int result = base; 

    for(int i = 1; i <= power; i++) 
    System.out.println(base + " pow(" + i + ") = " + result); 
    result *= base; 

    return result; 
} 

突然,我得到一個錯誤的結果power > 2,因爲現在result *= base;只執行一次(它現在在循環之外)。

3

如果這是您的實際代碼,則在分號前的最後一行中缺少一個結束圓括號。

這適用於我:

public class tester { 

    /** 
    * @param args 
    */ 
    public static void main(String[] args) { 
     // TODO Auto-generated method stub 

     System.out.println("The numbers are "); 
     for (int i = 0; i < args.length; i++) 
      System.out.print(args[i] + " "); 
    } 

} 

輸出(當1 2 3 4 5上CMD線指定):

The numbers are 
1 2 3 4 5 
2

忘記括號?

System.out.print(args[i] + " ");
1

你忘了用);關閉println方法。

您的問題:

System.out.print(args[i] + " "; 

您的解決方案:

System.out.print(args[i] + " "); 
相關問題