【发布时间】:2016-04-22 20:43:10
【问题描述】:
我无法确定这项任务。我只是在寻找特定问题的答案,因为在向数组列表添加东西时我似乎有点迷茫。我有一个带有 add 方法的“Gym”类,它应该从 Member 类创建一个“Member”对象。
public class Gym {
private String gymName; // Identifies the name of the gym.
private ArrayList<Member> members; // A list of member objects.
private double[] gymRates; // A map that relates membership type to its fee.
private double trainerRate; // indicates rate charge for one hour with PT.
/**
* Add a new member to a gym's list of members.
*
* @param hoursQ1 number of personal trainer hours the member had for quarter one.
* @param hoursQ2 number of personal trainer hours the member had for quarter two.
* @param hoursQ3 number of personal trainer hours the member had for quarter three.
* @param hoursQ4 number of personal trainer hours the member had for quarter four.
*/
public void addMember(String firstName, String lastName, MembershipType memberType, int hoursQ1, int hoursQ2,
int hoursQ3, int hoursQ4) {
members.add(new Member(firstName, lastName, memberType, hoursQ1, hoursQ2, hoursQ3, hoursQ4));
}
/**
* Add a specified member to a gym's list of members.
*
* @param member the member to add.
*/
public void addMember(Member member) {
Member.add(member);
}
}
public class Member {
private String firstName;
private String lastName;
private MembershipType memberType;
private int[] trainerHours = new int[4];
}
据我了解,错误(参数长度不同)是因为该参数具有 Q1-Q4 小时数,而我没有正确地将它们初始化到 trainerHours 数组中?
另外,我的 trainerHours 数组应该使用枚举类型类“Quarter”作为索引 Q1、Q2、Q3、Q4。这个我也没搞清楚。。 抱歉格式化,这里也有问题! ;)
【问题讨论】:
-
您是否为 Member 定义了一个构造函数,它接受所有这些参数?
-
Member.add(member);在public void addMember(Member member)方法中必须是members.add(member);。 -
@AndrewWilliamson 不,这正是我所期望的。我收到一个关于 Member 类的构造函数的错误。我认为项目描述让我有点困惑,因为它有点暗示我只需要 Member 中的那些私有字段,它没有这样的构造函数。我想它想让我弄清楚?不管怎样,让我试着做一个。
标签: java arraylist enumerated-types