2010-10-31 51 views
-1

所以我試圖從使用掃描儀(System.in)的用戶的輸入,但是當我嘗試鍵入東西到控制檯它不會讓我。我想使用掃描儀(System.in)的輸入,但它不讓我。幫幫我!

任何人都可以幫忙嗎?

Function.show(); 

Scanner input = new Scanner(System.in); 

if (input.equals("a")) 
{ 
    Function.outputFile(1, list); 
} 

input.close(); 
+0

你是什麼意思「它不會讓我」?它是否會拋出異常?它掛了嗎?程序是否完成但不顯示任何內容或更改輸出文件? – Pops 2010-10-31 21:29:08

回答

1

你忘了在掃描儀上打電話next。您的if行應改爲if (input.next().equals("a"))

1

我會建議(0)開關使用input.next.charAt ...

Function.show(); 

Scanner input = new Scanner(System.in); 

switch (input.next().charAt(0)) { 
    case 'a': { 
     Function.outputFile(1, list); 
     break; 
    } 
    case 'b': { 
     etc 
    } 

如果分開吧,(IE字符字母),您可以使用switchletter.toUpperCase())在理論上。 ..我從來沒有嘗試過],然後你不必擔心case