我试图了解.previous()方法的实际工作原理。
在此行:
System.out.printf("%s ", a.previous());
它首先在一行中打印实际的项目,然后转到上一个项目或它只是获得上一个值?
因为l1.size()为5,则循环条件检查第5个位置是否具有先前的值?
基本上,我只需要知道它是如何工作的即可。预先谢谢你。
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());
}
}
答案 0 :(得分:-1)
a.previous
获取当前值之前的值。为此,它首先检查当前a
是否具有紧接其前的值(即,指向值a
的节点)。如果是,则返回该值。然后由您的System.out.println