我正在尝试将此bufferedreader转换为字符串,但是由于某些原因,if语句无法将第一个字母识别为字符串

BufferedReader userInputMessage = new BufferedReader(new InputStreamReader(System.in));
message = userInputMessage.readLine();

firstLetter = message.substring(0,1);

System.out.println("FirstLetter: " + firstLetter + "/");
message = message.substring(1);
System.out.println("Message: " + message + "/");

if(!firstLetter.equals("0") || !firstLetter.equals("1")){
    System.out.println("First letter not valid!");
}

最佳答案

这将永远是正确的:

if(!firstLetter.equals("0") || !firstLetter.equals("1")){


考虑一下。如果第一个字母为0,则第二个部分为true;如果为1,则第一部分为true;如果为其他任何值,则两个部分均为true。您可能要使用&&:

if(!firstLetter.equals("0") && !firstLetter.equals("1")){

关于java - 将此bufferedReader转换为字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26474899/

10-10 05:58