I'm having trouble figuring out this assignment. I am only seeking an answer for a specific problem, as it seems I am a bit lost when adding things to an Array List. I have a 'Gym' class with the add method, which is supposed to create a 'Member' object from the Member class.
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];
}
From my understanding the error (arguments differ in length), is because the parameter has the hours Q1-Q4, and I'm not correctly initializing those into the trainerHours array?
Also, my trainerHours array is supposed to use an enumerated type class 'Quarter' as the indices, Q1,Q2,Q3,Q4. I haven't figured this out either.. Sorry for formatting, having trouble with that too here! ;)
There are 2 problems in your code :