Java 添加一个成员,然后让该成员添加其他内容

Java 添加一个成员,然后让该成员添加其他内容,java,Java,我的问题是我正在添加一个工作正常的成员,但是如何让该成员添加其他内容,例如 members.add(member); member.addCompetiton(raffles); StdOut.println(member.toString()); when i return my toString it is blank. toString==>> [bmi=4.0, height=4.0, raffles=[], name=e, address=e, dob=e, mempa

我的问题是我正在添加一个工作正常的成员,但是如何让该成员添加其他内容,例如

members.add(member);
member.addCompetiton(raffles);
StdOut.println(member.toString());

when i return my toString it is blank.

toString==>>
[bmi=4.0, height=4.0, raffles=[], name=e, address=e, dob=e, mempaid=4.0]
这是我试图添加它的类,这是我尝试添加它的方法

import java.util.ArrayList;

public class ElitePlayer extends Member {
    protected double bmi;
    protected double height;
    private ArrayList<Competition> raffles;

    public ElitePlayer(String name, String address, String dob, double mempaid,
            double bmi, double height) {
        super(name, address, dob, mempaid);
        this.bmi = bmi;
        this.height = height;
        raffles = new ArrayList<Competition>();
    }

    public double getBmi() {
        return bmi;
    }

    public void setBmi(double bmi) {
        this.bmi = bmi;
    }

    public double getHeight() {
        return height;
    }

    public void setHeight(double height) {
        this.height = height;
    }

    public double getMempaid() {

        if (this.mempaid > 10)
            this.mempaid = 10;
        return mempaid;
    }

    double calculateMembershipFeeOwed() {
        double owed = 10;
        return owed;
    }
    void addCompetiton(Competition raffles){

    }

    void removeCompetiton(Competition raffles){
    }

    @Override
    public String toString() {
        return "ElitePlayer [bmi=" + bmi + ", height=" + height + ", raffles="
                + raffles + ", name=" + name + ", address=" + address
                + ", dob=" + dob + ", mempaid=" + mempaid + "]";
    }


    }



public void addElitePlayer(Member mem) {
    StdOut.println("Please enter the Elite members's name: ");
    System.out
            .println("-------------------------------------------------------------------------------------------");
    StdIn.readLine();
    String name = StdIn.readLine();
    StdOut.println("Please enter the Elite members's address: ");
    System.out
            .println("-------------------------------------------------------------------------------------------");
    String address = StdIn.readLine();
    StdOut.println("Please enter the Elite members's DOB: ");
    System.out
            .println("-------------------------------------------------------------------------------------------");
    String dob = StdIn.readLine();
    StdOut.println("Please enter the the amount to Pay: ");
    System.out
            .println("-------------------------------------------------------------------------------------------");
    double mempaid = StdIn.readDouble();
    StdOut.println("Please enter the Elite members's BMI: ");
    System.out
            .println("-------------------------------------------------------------------------------------------");
    double bmi = StdIn.readDouble();
    StdOut.println("Please enter the Elite members's height: ");
    System.out
            .println("-------------------------------------------------------------------------------------------");
    double height = StdIn.readDouble();
    ElitePlayer member = new ElitePlayer(name, address, dob, mempaid, bmi,
            height);
    if (mempaid > 10) {
        StdOut.print("You have overpaid, your change is  ");
        StdOut.println(mempaid -= 10);
        System.out
                .println("-------------------------------------------------------------------------------------------");
    }
//  Competition raffles = new Competition();

    members.add(member);
    member.addCompetiton(raffles);
    StdOut.println(member.toString());
import java.util.ArrayList;
公共类ElitePlayer扩展了成员{
保护性双体质量指数;
保护双高;
莱佛士私人酒店;
公共精英层(字符串名称、字符串地址、字符串dob、双mempaid、,
双倍体重指数,双倍身高){
super(姓名、地址、dob、mempaid);
该指数为bmi=bmi;
高度=高度;
莱佛士=新ArrayList();
}
公共双getBmi(){
返回体重指数;
}
公共健康指数(双倍体重指数){
该指数为bmi=bmi;
}
公众双倍身高(){
返回高度;
}
公共空间设置高度(双倍高度){
高度=高度;
}
公共双getMempaid(){
如果(this.mempaid>10)
这个.mempaid=10;
已支付的报酬;
}
双重计算成员shipfeeowed(){
双欠=10;
归还欠款;
}
void AddCompetition(莱佛士竞赛){
}
void removeCompetiton(莱佛士竞赛){
}
@凌驾
公共字符串toString(){
return“精英球员[bmi=“+bmi+”,height=“+height+”,莱佛士=”
+莱佛士+”,name=“+name+”,address=“+address
+“,dob=“+dob+”,mempaid=“+mempaid+”];
}
}
公共玩家(成员mem){
println(“请输入精英成员的姓名:”);
系统输出
.println(“---------------------------------------------------------------------------------------------------------------”;
StdIn.readLine();
字符串名称=StdIn.readLine();
println(“请输入精英成员的地址:”);
系统输出
.println(“---------------------------------------------------------------------------------------------------------------”;
字符串地址=StdIn.readLine();
println(“请输入精英成员的DOB:”);
系统输出
.println(“---------------------------------------------------------------------------------------------------------------”;
字符串dob=StdIn.readLine();
println(“请输入要支付的金额:”);
系统输出
.println(“---------------------------------------------------------------------------------------------------------------”;
double mempaid=StdIn.readDouble();
println(“请输入精英会员的BMI:”);
系统输出
.println(“---------------------------------------------------------------------------------------------------------------”;
double bmi=StdIn.readDouble();
println(“请输入精英成员的身高:”);
系统输出
.println(“---------------------------------------------------------------------------------------------------------------”;
双倍高度=标准din.readDouble();
ElitePlayer成员=新的ElitePlayer(姓名、地址、dob、mempaid、bmi、,
高度);
如果(mempaid>10){
打印(“您多付了,您的零钱是”);
标准打印项数(mempaid-=10);
系统输出
.println(“---------------------------------------------------------------------------------------------------------------”;
}
//竞赛莱佛士=新竞赛();
成员。添加(成员);
成员:addCompetiton(莱佛士);
StdOut.println(member.toString());
或者

void addCompetiton(Competition raffles){
    this.raffles = raffles;
}


我推测您的问题是参数的名称与字段的名称相同。您可以使用
this.raffles
来表示字段。

向我们显示您的成员类的来源。这个问题没有意义,请澄清。感谢Joop Eggen的款待。
void addCompetiton(Competition competition){
    raffles = competition;
}