2017-02-24 21 views
0

這是Java的新手,來自Python。我們如何在java中傳遞String [] args

我們如何在控制檯中傳遞String[] args。我試圖執行下面的密碼生成器的代碼(從檢索到:RC

public static void main(String[] args) { 
    int num, len; 

    try { 
     if (args.length != 2) 
      throw new IllegalArgumentException(); 

      len = Integer.parseInt(args[0]); 
      if (len < 4 || len > 16) { 
       throw new IllegalArgumentException(); 
      } 
      num = Integer.parseInt(args[1]); 
      if (num < 1 || num > 10) { 
       throw new IllegalArgumentException(); 
      } 
      for (String pw : generatePasswords(num, len)) { 
       System.out.println(pw); 
      } 
     } 
     catch (IllegalArgumentException e) { 
      System.out.println("Provide the length of the passwords (min 4, max 16) you " 
        + "want to generate,\n and how many (min 1, max 10)"); 
      String s = console.next(); 
      System.out.println(s); 
     } 
    } 
} 

由於args[]是一個數組,我曾嘗試:{5,5},{ 「5」, 「5」} ,[5,5]。似乎沒有任何工作。

任何意見,不勝感激。

+2

'args'不是來自控制檯。它包含命令行參數。 – shmosel

+1

'String s = console.next();' - 控制檯在您的代碼中定義的位置? –

回答

1

你需要傳遞的參數與執行命令一起,在控制檯上

java -cp . App arg1 arg2 arg3 
1

如果您使用的是IntelliJ然後去Run > Edit Configurations菜單設置。將出現一個對話框。現在您可以將參數添加到Program arguments輸入字段。

否則,您可以在運行程序時通過命令行傳遞參數。

java App arg1 arg2 arg3 
+0

你可能不應該在每個參數後面加逗號。 –

+0

對不起,我的壞。編輯我的答案 – CodeMonkey

相關問題