public interface IPowerList<T> extends Iterable< T > {
public int bitFlag(List<T> subseq);
}
public class PowerList<T> implements IPowerList<T>{
private List<T> originalList;
private Set<Set<T>> powerList= new HashSet<Set<T>>();
@Override
public Iterator<T> iterator() {
// TODO Auto-generated method stub
return null;
}
@Override
public int bitFlag(List<T> subseq) {
// TODO Auto-generated method stub
return 0;
}
}
Eclipse 自动给了我一个覆盖方法来实现iterator
.
(1) 是不是因为我实现了一个从可迭代扩展的接口?
(2) 我的私有变量是集合和列表——它们有自己的迭代器,我不需要定义任何新的迭代器——那我该怎么办?我应该删除遗产吗?
(3) 我们什么时候需要定义一个新的迭代器?当我们定义一个类时,它对我们来说是一种集合?但我想知道为什么,因为我们总是使用通用集合,它们有自己的迭代器..你能给我举个例子吗?
(4) 如果我添加到一组集合 anew HashSet<T>()
你会认为它添加一个空列表还是添加new HashSet().add(null)
将被视为一个空列表?