Java 我希望,当在员工_地址中输入的是Banglore且工资超过25000时,我可以获得员工的所有详细信息
我已经写了这段代码,但当我输入Banglore和26000时,它并没有返回所需的条件 当员工地址为Banglore且工资超过25000时,我希望获得所有员工详细信息Java 我希望,当在员工_地址中输入的是Banglore且工资超过25000时,我可以获得员工的所有详细信息,java,string,if-statement,boolean,Java,String,If Statement,Boolean,我已经写了这段代码,但当我输入Banglore和26000时,它并没有返回所需的条件 当员工地址为Banglore且工资超过25000时,我希望获得所有员工详细信息 import java.util.Scanner; public class ContactManager { public static void main(String[] args) { // TODO Auto-generated method stub @SuppressWar
import java.util.Scanner;
public class ContactManager {
public static void main(String[] args) {
// TODO Auto-generated method stub
@SuppressWarnings("resource")
Scanner s=new Scanner(System.in);
int employee_id;
String employee_name;
String address;
int mobile;
int salary;
String q;
System.out.println("empolyee_id:");
employee_id=s.nextInt();
System.out.println("employee_name:");
employee_name=s.next();
System.out.println("mobile:");
mobile=s.nextInt();
System.out.println("address:");
address=s.next();
System.out.println("salary:");
salary=s.nextInt();
q = "Banglore";
if(address==q && salary > 25000) {
System.out.println(employee_name);
System.out.println(employee_id);
System.out.println(address);
System.out.println(mobile);
System.out.println(salary);
} else {
System.out.println("Sorry");
}
}
}
必须使用equals方法比较字符串 ==测试它们是否为同一对象的引用相等性 .equals测试值是否相等,逻辑上是否相等 变量String address和String q=Banglore不是相同的对象,因此address==q返回false
在ifq.equalsaddress&salary>25000上替换ifaddress==q&&salary>25000,如果address.equalsq&&salary>25000,你可以使用它来代替ifaddress==q&&salary>25000,那么它应该可以工作。如果我在其中创建一个对象和这个字符串值,然后使用address==这个对象,它会工作吗?对象类的实例还是什么?对象类的实例obIf q和ob.address具有相同的引用,ob.address==q返回true。比较两个字符串的最简单方法是使用类似于q.equalsaddress的代码。我已经写过了。在Java中,==运算符通过引用检查相等性。在这种情况下,q和地址将不匹配。您希望使用equals方法:address.equalsq。还可以考虑在比较之前将字符串转换为小写或小写。