这个程序简短而且很甜,如果字母是大写或小写,或者无效,只需要输出计算机。但它似乎跳过代码并直接转到"You did not type a valid input"
。如何让它识别其他选项并正常工作?
以下是代码:
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);
}
}
}
答案 0 :(得分:1)
在java中,使用equals()或equalsIgnoreCase()来比较String
,而不是==
答案 1 :(得分:1)
要比较Java中的String,请使用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);
}