All pastes #777674 Raw Edit

Stuff

public java v1 · immutable
·published 2007-11-16 23:13 UTC
rendered paste body
/** * Store details of club memberships. *  * @Rasmus Franke * @0.3 */import java.util.LinkedList;import java.util.Iterator;import java.util.ArrayList;public class Club{private LinkedList<Membership> lista;    // Define any necessary fields here ...        /**     * Constructor for objects of class Club     */    public Club()    {        // Initialise any fields here ...        lista = new LinkedList<Membership>();    }    /**     * Add a new member to the club's list of members.     * @param member The member object to be added.     */    public void join(Membership member)    {        int duplicate = 0;        Iterator<Membership> it = lista.iterator();        while(it.hasNext()){            if(it.next().getName() == member.getName()){                System.out.println("This member is already registered");                duplicate = 1;                }            }        if(duplicate != 1){            lista.add(member);        }    }    /**     * @return The number of members (Membership objects) in     *         the club.     */    public int numberOfMembers()    {        return lista.size();    }    /**     * Return how many members joined in the given month     * @param month The month we are interested in.     * @param year The year of the Membership.     * @return How many members joined in the given month.     */    public int joinedInMonth(int month, int year)    {        if((month > 12) || (month < 1)){            System.out.println("Please choose a real month");            return 0;        }        int number = 0;        Membership member;        Iterator<Membership> it = lista.iterator();        while(it.hasNext()){            member = it.next();            if((member.getMonth() == month) && (member.getYear() == year)){                number++;            }        }        return number;    }    /**     * Remove from the club's collection all members who joined     * in the given month, and return them stored in a separate     * collection object.     * @param month The month of the Membership.     * @param year The year of the Membership.     */    public ArrayList purge(int month, int year)    {        ArrayList<Membership> purgelista;        purgelista = new ArrayList<Membership>();        if((month > 12) || (month < 1)){            System.out.println("Please choose a real month");            return purgelista;        }        Membership member;        Iterator<Membership> it = lista.iterator();        while(it.hasNext()){            member = it.next();            if((member.getMonth() == month) && (member.getYear() == year)){                purgelista.add(member);                it.remove();            }        }        return purgelista;    }}