package [Link].
exercise;
import [Link].*;
interface ValueContainer extends Iterable<Integer> {}
class SingleValue implements ValueContainer
{
public int value;
public SingleValue(int value)
{
[Link] = value;
}
@Override
public Iterator<Integer> iterator()
{
return [Link](value).iterator();
}
}
class ManyValues extends ArrayList<Integer> implements ValueContainer
{
}
class MyList extends ArrayList<ValueContainer>
{
public MyList(Collection<? extends ValueContainer> c)
{
super(c);
}
public int sum()
{
int result = 0;
for (ValueContainer c : this)
{
for (int i : c)
{
result += i;
}
}
return result;
}
}