2012-03-15 47 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 
}