首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Java中的链表方法

Java中的链表方法
EN

Stack Overflow用户
提问于 2019-05-17 02:52:13
回答 1查看 51关注 0票数 -5

我正在尝试理解.previous()方法的实际工作原理。

在这一行中:

代码语言:javascript
复制
System.out.printf("%s ", a.previous());

它首先打印一行中的实际a项,然后转到前一项,还是只获得前一项的值?

因为l1.size()是5,所以循环条件检查第五个位置是否有前一个值?

基本上,我只需要知道这是如何按顺序工作的。提前谢谢你。

代码语言:javascript
复制
    public static void main(String[] args) {
    String[] a = {"apple", "bee", "orange", "noob", "win"};
    List<String> list1 = new LinkedList<String>();
    for (String s : a) {
        list1.add(s);
    }

    System.out.println("List1 Size: " + list1.size());

    reverse(list1);   
}
//reverse method
public static void reverse(List<String> l1) {

    ListIterator<String> a = l1.listIterator(l1.size());
    while (a.hasPrevious()) {
        System.out.printf("%s ", a.previous());
    }

}
EN

回答 1

Stack Overflow用户

发布于 2019-05-17 03:25:34

a.previous获取直接位于当前值之前的值。它通过首先检查当前a是否有紧跟在其前面的值(即指向值a的节点)来完成此操作。如果是,则返回该值。然后由您的System.out.println打印出来

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56174910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档