Java 如果语句运行不正常
嗨,斯塔克尔斯Java 如果语句运行不正常,java,Java,嗨,斯塔克尔斯 System.out.print("Enter your first name: "); firstName = keyboard.nextLine(); if(firstName!="Mike"&&firstName!="mike"&&firstName!="Diane"&&firstName!="diane") { System.out.println("derp"); } else
System.out.print("Enter your first name: ");
firstName = keyboard.nextLine();
if(firstName!="Mike"&&firstName!="mike"&&firstName!="Diane"&&firstName!="diane")
{
System.out.println("derp");
}
else
discount=true;
然而,结果是:
Enter your first name: diane
derp
如果有人能告诉我我做错了什么,那就太好了,非常感谢
public class Test{
public static void main(String[] args) {
System.out.print("Enter your first name: ");
Scanner keyboard = new Scanner(System.in);
String firstName = keyboard.nextLine();
if (!(firstName.equalsIgnoreCase("mike") || (firstName.equalsIgnoreCase("diane")))) {
System.out.println("derp");
} else
System.out.println("true");
}
}
输出
Enter your first name: diane
true
我试着把语句的条件弄乱了,如果条件需要
|
而不是&&
,那就没有用了。另外,对于您的具体情况-!firstName.equalsIgnoreCase(“mike”)&&!firstName.equalsIgnoreCase(“diane”)
您需要使用.equals()
方法。==还有!=检查实例,而不是字符串的内容。@PeterJi-answer已发布供您接受