The MasterOrder
problem from the 2010 AP Computer Science Exam is typical of free response problems that test lists. The problem requires you to manipulate a List
and the objects inside.
MasterOrder
is #1 from the 2010 AP Computer Science Free Response.
https://secure-media.collegeboard.org/apc/ap10_frq_computer_science_a.pdf
Part (a) getTotalBoxes
method
public int getTotalBoxes()
{
int boxes = 0;
for (CookieOrder order : orders)
boxes += order.getNumBoxes();
return boxes;
}
On the free response, when in doubt, use a regular loop (for
or while
). See Enhanced for loop exercises for information on when enhanced for
loops are appropriate, and to practice with them.
Part (b) removeVariety
method
public int removeVariety(String cookieVar)
{
int boxesRemoved = 0;
for (int i = orders.size() - 1; i >= 0; i--)
{
if (cookieVar.equals(orders.get(i).getVariety()))
boxesRemoved += orders.remove(i).getNumBoxes();
}
return boxesRemoved;
}
See ArrayList practice for details on adding to and removing from an ArrayList
within a loop.
2010 AP CS Exam Free Response Solutions
Help & comments
Get help from AP CS Tutor Brandon Horn