0

66行目でエラーが発生するため、データを取得できます。しかし、null 値を取得するというエラーが表示されます。私はコードを調べましたが、それでも正しい値が得られると思います。そのためだけに作成したメソッドを使用してみました。しかし、その後はうまくいかなかったので、ログインに使用する方法を使用しました。

label_KontoId.setText(myPrivate.getAccountName());

私のクラスは次のようになります: 私のメインでは、このコードを取得しました

public void SetId(String AccountId, String kode) {
    AccountName = AccountId;
    Password =  kode;
}

public static void main(String[] args) {
    EventQueue.invokeLater(new Runnable() {
        public void run() {
            try {
                PrivatekunderGUI frame = new PrivatekunderGUI();
                frame.setVisible(true);
                myPrivate = PR.LogindCheck(AccountName, Password);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    });

    label_KontoId.setText(myPrivate.getAccountName());
}

これはすべてのコードではなく、必要なものだけです。もう 1 つのコードは、GUI 用に生成されます。

public class Private extends Customers {

    private String AccountName;
    private String Password;
    private int Balance;
    private int AccountId;

    public Private(String Name, int Number, int Zip, String Address, int Phone,
            int Balance, int AccountId, String AccountName, String Password) {
        super(Name, Number, Zip, Address, Phone);
        this.AccountId = AccountId;
        this.Balance = Balance;
        this.AccountName = AccountName;
        this.Password = Password;
    }

    public String getAccountName() {
        return AccountName;
    }

    public String getPassword() {
        return Password;
    }

    public int getBalance() {
        return Balance;
    }

    public int getAccountId() {
        return AccountId;
    }

    public void setAccountName(String accountName) {
        AccountName = accountName;
    }

    public void setPassword(String password) {
        Password = password;
    }

    public void setBalance(int balance) {
        Balance = balance;
    }

    public void setAccountId(int accountId) {
        AccountId = accountId;
    }

    void account() {
    }

    @Override
    public String toString() {
        return "Private [AccountName=" + AccountName + ", Password=" + Password
                + ", Balance=" + Balance + ", AccountId=" + AccountId
                + ", getName()=" + getName() + ", getNumber()=" + getNumber()
                + ", getZip()=" + getZip() + ", getAddress()=" + getAddress()
                + ", getPhone()=" + getPhone() + "]";
    }
}

と私のようにPrivateRegistre見えます:

public class PrivateRegistre {
    private ArrayList<Private> privater = new ArrayList<>();

    public PrivateRegistre() {
        gem("Driton", 32233223, 2400, "Hallovej 54", 32233223, 543442, 1,
                "Driton", "1234");
    }

    public void gem(String Name, int Number, int Zip, String Address,
            int Phone, int Balance, int AccountId, String AccountName,
            String Password) {
        privater.add(new Private(Name, Number, Zip, Address, Phone, Balance,
                AccountId, AccountName, Password));
    }

    public ArrayList<Private> hentalleprivatekunder() {

        return privater;
    }

    public Private findkunde(int AccountId) {
        for (Private privat : privater) {
            if (privat.getAccountId() == AccountId) {
                return privat;
            }
        }
        return null;
    }

    public Private LogindCheck(String AccountName, String Password) {
        for (Private privat : privater) {
            if (privat.getAccountName().equals(AccountName)
                    && privat.getPassword().equals(Password)) {
                return privat;
            }
        }
        return null;
    }

    public boolean sletprivatekunde(int AccountId) {
        Private privat = findkunde(AccountId);
        if (privat == null)
            return false;

        privater.remove(privat);
        return true;
    }

    @Override
    public String toString() {
        return "PrivateRegistre [Private Kunder=" + privater + "]";
    }

    public Private HentLogindOplysninger(String AccountName) {
        for (Private privat : privater) {
            if (privat.getAccountName().equals(AccountName)) {
                return privat;
            }
        }
        return null;
    }
}
4

2 に答える 2