2013-10-12 25 views
0

这个程序简短而亲切,只要计算机输出,如果字母是大写或小写,或无效。但它似乎跳过代码并直接转到"You did not type a valid input"。我如何才能识别其他选项并正确工作?Java程序的大写/小写不起作用,有利于

下面是代码:

import java.util.*; 

    public class StringTest2 { 
     public static void main(String[] args) { 

     System.out.println("uppercase (U/u) or lowercase (L/l)?"); 

     Scanner console = new Scanner(System.in); 
     String input = console.nextLine(); 
     if (input == "U" || input == "u") { 
     System.out.println("uppercase!" + input); 
     } else if (input == "L" || input == "l") { 
     System.out.println("lowercase!" + input); 
     } else { 
     System.out.println("You did not type a valid input " + input); 
     } 
    } 
    } 

回答

1

比较字符串在Java中,使用equals("text")equalsIgnoreCase("tExT")

所以,它应该是:

System.out.println("uppercase (U/u) or lowercase (L/l)?"); 

    Scanner console = new Scanner(System.in); 
    String input = console.nextLine(); 

    if (input.equalsIgnoreCase("u")) { 
     System.out.println("uppercase!" + input); 
    } else if (input.equalsIgnoreCase("l")) { 
     System.out.println("lowercase!" + input); 
    } else { 
     System.out.println("You did not type a valid input " + input); 
    }