2012-03-15 43 views
0

我在我的書中找不到答案,這很容易,但我在這裏錯過了一些簡單的東西。程序中的字符串輸入

我有一個程序,我問用戶「選擇客戶或員工C或E」然後,我需要說如果他們選擇C然後做這個或如果他們選擇E做到這一點。 我是新來的,掙扎着,所以我知道這可能是一件容易的事情,但我沒有得到它。

Scanner in = new Scanner(System.in); 
    system.out.println("choose c or e: "); 

    if (in.equalsIgnoreCase("c")) 
    { 
    //do something 
    } 

    if (in.equalsIgnoreCase("e")) 
    { 
    // do something 
    } 

我究竟做錯了什麼?

回答

7

Scanner不是實際的輸入 - 您需要從讀取輸入掃描儀,例如,

Scanner scanner = new Scanner(System.in); 
// Note capital S - Java is case-sensitive 
System.out.println("choose c or e: "); 

String input = scanner.nextLine(); 

if (input.equalsIgnoreCase("c")) 
... 
1

in是掃描儀,而不是字符串。使用in.next()

2

掃描儀沒有像equalsIgnoreCase()這樣的方法,此方法存在於String中。所以使用next()或nextLine()得到一個String並且做你想做的事

Scanner in = new Scanner(System.in); 
system.out.println("choose c or e: "); 
String value = in.next(); 
if (value.equalsIgnoreCase("c")) 
{ 
//do something 
} 

if (value.equalsIgnoreCase("e")) 
{ 
// do something 
}