Java 比较用户输入和getter

Java 比较用户输入和getter,java,Java,我正在尝试比较用户输入'username'以获取买方类'buyer.getUser'中的方法,并比较'password'以获取买方类'buyer.getPass'中的方法 它一直要求我在buyer类中将用户名和密码设置为静态,但这始终表示登录不成功,即使输入了正确的输入 用户类 switch (credentials) { case 1 : { System.out.println("Buyer"); System.out.prin

我正在尝试比较用户输入'username'以获取买方类'buyer.getUser'中的方法,并比较'password'以获取买方类'buyer.getPass'中的方法
它一直要求我在buyer类中将用户名和密码设置为静态,但这始终表示登录不成功,即使输入了正确的输入

用户类

switch (credentials) {
        case 1 : {
            System.out.println("Buyer");
            System.out.println("Enter Username: ");
            username = S.next();
            System.out.println("Enter Password: ");
            password = S.next();

                            if ((username.equals(Buyer.getUser())) && (password.equals(Buyer.getPass()))){
                                System.out.println("Login Successful");
                            }else{ 
                                System.out.println("Login unsucessful");
            break;
        }
                    }
public static void buyerCredentials() {
    ArrayList<Buyer> buyer = new ArrayList<Buyer>();

    buyer.add(new Buyer("user1", "pass123"));
    buyer.add(new Buyer("user2", "pass321"));

    for (int i = 0; i < buyer.size(); i++){
        System.out.println(buyer.get(i));
    }
}
买方类别

public class Buyer {

private String username;
private String password; 


public Buyer (String username, String password){
    this.username = username;
    this.password = password;
}

public String getUser(){
    return username;
}

public String getPass(){
    return password;
}
用户类

switch (credentials) {
        case 1 : {
            System.out.println("Buyer");
            System.out.println("Enter Username: ");
            username = S.next();
            System.out.println("Enter Password: ");
            password = S.next();

                            if ((username.equals(Buyer.getUser())) && (password.equals(Buyer.getPass()))){
                                System.out.println("Login Successful");
                            }else{ 
                                System.out.println("Login unsucessful");
            break;
        }
                    }
public static void buyerCredentials() {
    ArrayList<Buyer> buyer = new ArrayList<Buyer>();

    buyer.add(new Buyer("user1", "pass123"));
    buyer.add(new Buyer("user2", "pass321"));

    for (int i = 0; i < buyer.size(); i++){
        System.out.println(buyer.get(i));
    }
}
publicstaticvoidbuyerCredentials(){
ArrayList买方=新ArrayList();
买方。添加(新买方(“用户1”、“密码123”);
买方。添加(新买方(“用户2”、“密码321”);
对于(int i=0;i

提前谢谢

在比较买家对象之前,必须先创建买家对象的实例

Buyer myBuyerInst = new Buyer("MyUser", "MyPass");
现在您可以比较:

username.equals(myBuyerInst.getUser()) 
您必须反复浏览您的列表:

for(Buyer b : buyer) {
    username.equals(b.getUser()) 
}

实际上,您并没有创建Buyer类的对象,而是调用变量作为静态引用,所以用户名和密码总是为null

Buyer buyer = new Buyer();
buyer.getUser();
buyer.getPass();

我刚刚在我的程序中的另一个类中添加了它。所有代码现在都在上面的问题中。