可逆迭代器

发布于 2024-10-30 05:59:33 字数 642 浏览 1 评论 0原文

公共 ReversibleIterator 迭代器();

谁能帮我做这个方法?我将介绍到目前为止我所做的事情

ReversibleIterator 应该表现如下。对 next 或 previous 的第一次调用应分别返回列表的第一个或最后一个元素。对下一个/上一个的后续调用应返回相对于对下一个/上一个的先前调用而言下一个/上一个的元素。例如,如果对 next 的两次调用导致星期日和星期一,则对 previous 的后续调用应返回星期日。

public ReversibleIterator<T> iterator() {
    PublicLinkedList<T> list = new PublicLinkedList<T>();
    PublicNode<T> node = list.head;
    while (node.getElement() != null) {
        list.add(node.getElement());
        node = node.getNext();
    }
    ReversibleIterator<T> rIter = new ReversibleIterator<T>(list);
    return rIter;
}

public ReversibleIterator iterator();

can anyone help me make this method? ill put up what i have done so far

The ReversibleIterator should behave as follows. The first call to next or previous should return the first or last element of the list, respectively. Subsequent calls to next/previous should return the element that is next/previous with respect to the antecedent call to next/previous. For example, if two calls to next result in Sunday and Monday, then a following call to previous should return Sunday.

public ReversibleIterator<T> iterator() {
    PublicLinkedList<T> list = new PublicLinkedList<T>();
    PublicNode<T> node = list.head;
    while (node.getElement() != null) {
        list.add(node.getElement());
        node = node.getNext();
    }
    ReversibleIterator<T> rIter = new ReversibleIterator<T>(list);
    return rIter;
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

氛圍 2024-11-06 05:59:33

Java 的 ListIterator 就是您所需要的。最大的优势:它已经存在。

您可以通过调用 listIterator() 函数。

Java's ListIterator is what you need. The big advantage: It already exists.

You can retrieve it from any list in Java by calling the listIterator() function.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文