Java bluej if statement


import java.util.ArrayList;
public class Lan{
    private ArrayList<Member> members;
    public Lan()
    {
        members = new ArrayList<Member>();
    }
    public void addMember(Member newMember){
        if(newMember.getBalance() >= 200)
        {
            this.members.add(newMember);
        }
        else
        {
            System.out.println("You dont have enough money to enter");
        }
    }
    public void printMembers(){
        System.out.println("People attending");
        for(Member member : members)
        {
            System.out.println(member);
        }
    }
}
public class Member{
    private String name;
    private String alias;
    private int balance;
    public Member(String fullName, String nickname){
        this.name = fullName;
        this.alias = nickname;
        this.balance = 0;
    }
    public void setBalance(int account)
    {
        if(account > 0)
        {
            balance = balance + account;
        }
        else
        {
            System.out.println("You have not entered a valid number");
        }
    }
    public String getName()
    {
        return name;
    }
    public String getAlias()
    {
        return alias;
    }
    public int getBalance()
    {
        return balance;
    }
    @Override
    public String toString() {
        return "Name: " + this.name + " / Alias: " + this.alias;
    }
}

这些是我的班级,LanMember,这些成员要进入兰,他们需要有200个余额。一切正常,但是当它们添加到 Lan 数组中时,我似乎无法弄清楚如何进行(Balance - 200)

问题是,只有在有足够的钱进入时,您才希望将他们的余额减少 200。您可以通过将其余额设置为当前余额 - 200 从正确的 if 语句中来做到这一点。喜欢这个:

   public void addMember(Member newMember){
            if(newMember.getBalance() >= 200)
            {
                this.members.add(newMember);
newMember.setBalance(newMember.getBalance()-200);
            }
            else
            {
                System.out.println("You dont have enough money to enter");
            }
        }

最新更新