2014-04-24 16 views
-1

我想用一個Java Scanner命令的形式從用戶那裏得到的命令ARGARG 的ARG遊戲用空格分開。充分利用用戶輸入命令的形式 - 的Java

我想寫一個命令和參數爲String[],調用command

感謝curlip

我現在已經開始了,這是我有什麼(感謝什麼:()

public static void main(String[] args){ 
    Boot.boot(); 

    Scanner scanner = new Scanner(System.in); 
    String[] command = scanner.nextLine().trim().split(" "); 
    String[] commandListOutput = Boot.command.commands.get(command[0]); 
    Object[][] argsArray = new String[1][command.length - 1]; 
    Class<?>[] argsArrayClasses = new Class<?>[]{Object[].class}; 

    for(int i = 0; i > argsArray.length - 1; i++){ 
     if(i != 0){ 
      argsArray[0][i] = command[i]; 
     } 
    } 



    invokeMethod(commandListOutput[commandListOutput.length - 1], "command", argsArrayClasses, argsArray[0]); 
    scanner.close(); 
} 
+1

告訴我們您已經嘗試什麼:) – kai

+0

我不知道從哪裏開始,所以我真的不能給在這個時候。 我知道我需要一臺掃描儀,我知道如何做到這一點,但從他們對我卡住。 – Curlip

+0

'assertThat(question,containsString(「?」))'=>'java.lang.AssertionError:Expected:包含「?」的字符串但是:「...」' – Seelenvirtuose

回答

0

你可以做這樣的事情

Scanner scanner = new Scanner(System.in); 
String[] command = scanner.nextLine().trim().split(" "); 

假設你從標準輸入讀取命令。

+0

謝謝我將從頭開始。 – Curlip

0

但從自動化點,你應該避免使用此方法,並創建一個改爲使用CLI解決方案(避免在整個過程中進行人工交互),爲此,我建議使用Apache CLI: http://commons.apache.org/proper/commons-cli/

即使您是爲了學術目的而這樣做,您應該可以利用它我們的論點解析方法可以幫助您完成自己的程序。

+0

對不起,但從我的經驗中使用這種方法很可能會讓我在黑暗中更加抱歉我只是不知道該如何處理這種事 – Curlip

0

你可以試試這樣說:

​​