2013-10-12 2 views
0

Эта программа является короткой и сладкой, просто имея выход компьютера, если буква в верхнем или нижнем регистре или неверна. Но, кажется, пропустить код и перейти непосредственно к "You did not type a valid input". Как заставить его распознавать другие параметры и работать правильно?Программа Java для прописных/строчных букв не работает, help por favor

Вот код:

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); 
    }