【发布时间】:2018-04-14 11:11:32
【问题描述】:
我有这个问题:
给定可迭代的
class Foo,它始终只保留一个int在其构造函数上设置的值,创建一个迭代器,所以它 尊重其所有限制,即:您不能更改int初始化后的值。您应该只包括所需的 要抛出的异常。
好的,到目前为止,如果我以正确的方式理解了这个问题,我应该为 Foo 类创建一个迭代器,但是我以前从未这样做过,而且问题本身似乎有点误导.是清单吗?还是不应该?无论如何,尽管如此,我只想知道如何创建它。
所以现在我有了这个:
public class Foo implements Iterable<Foo> {
@Override
public Iterator<Foo> iterator() {
throw new UnsupportedOperationException("Not supported yet.");
}
}
但我什至不知道这是否是正确的做法。 如果有人能帮我解决这个问题,我将不胜感激。
提前谢谢你。
【问题讨论】:
-
'包括所有需要抛出的异常,但只有那些需要的'似乎是矛盾的。寻求澄清。
-
iterator()方法的返回类型应该是Iterator<Something>。应该是Iterator<Foo>还是Iterator<Integer>还是别的什么? -
已编辑。这意味着我只需要此类迭代器限制而不是全部。我不知道我说得对不对。
-
好吧,这个练习只告诉了我上面引用的内容,所以我相信它是 Iterator
? -
那么当我们遍历
Foo实例时会发生什么?什么都没有?
标签: java object iterator iterable