2021 AP CSA FRQ 3: ClubMembers

2021 FRQ #3: ClubMembers

ArrayList Methods

9 Points
Timer
25:00

Problem Description

MemberInfo Class (provided)

public class MemberInfo
{
    /** Returns the name */
    public String getName()
    { /* implementation not shown */ }

    /** Returns the graduation year */
    public int getGradYear()
    { /* implementation not shown */ }

    /** Returns true if in good standing */
    public boolean inGoodStanding()
    { /* implementation not shown */ }
}

ClubMembers Class

public class ClubMembers
{
    private ArrayList memberList;

    /** Adds members graduating in year to result list */
    public ArrayList removeMembers(int year)
    { /* to be implemented */ }
}

removeMembers: Remove all members who are graduating in year AND are in good standing. Return an ArrayList of the removed members.

Write the removeMembers Method

🔓 Solution
public ArrayList removeMembers(int year)
{
    ArrayList removed = new ArrayList();
    int i = 0;
    while (i < memberList.size())
    {
        MemberInfo m = memberList.get(i);
        if (m.getGradYear() == year && m.inGoodStanding())
        {
            removed.add(m);
            memberList.remove(i);
        }
        else
        {
            i++;
        }
    }
    return removed;
}

Related Practice: ArrayList Operations

Similar FRQs:

Study Guide:

Daily Practice:

Contact form