这段代码哪儿有错,急
发布网友
发布时间:2022-06-09 22:37
我来回答
共1个回答
热心网友
时间:2024-03-15 16:48
你对String类还不了解 首先要明白这一点。在Java中 “==” 表示判断两个对象是否相等(即两个对象在内存中的地址是不是一样),而并非用于判断字符串是否相等,千万别弄错啦!
String类提供了一个equals方法,来判断字符串是否相等。
if(name=="青 " && mima==123)
{
System.out.println("欢迎光临,青");
}
else
{
System.out.println("对不起,你不是青");
}
你这里就不能这样来判断
if("青".equals(name) && mima==123)
{
System.out.println("欢迎光临,青");
}
else
{
System.out.println("对不起,你不是青");
}
像这样才是正确的,因为很明显你的name和 你输入的“青”在内存是两个不同的变量,他们是不可能相等的,所以你的结果只会显示false的那块。
"青".equals(name) 说明一下我这里为什么要这样写,其实像这样写也是对的name.equals(“青”) ,但是它有一个缺陷,它很容易出错,出现空指向异常,所以在Java中建议写前一种。
另外,站长团上有产品团购,便宜有保证