Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中的sinlgly linkedlist迭代器中实现hasNext方法?_Java - Fatal编程技术网

如何在java中的sinlgly linkedlist迭代器中实现hasNext方法?

如何在java中的sinlgly linkedlist迭代器中实现hasNext方法?,java,Java,下面是在单个linkedlist迭代器中实现hasNext方法的代码,但我不明白为什么要以这种方式实现此方法 private class LinkedListIterator implements ListIterator { . . . public boolean hasNext() { if (position == null) return first != null; else return position.

下面是在单个linkedlist迭代器中实现hasNext方法的代码,但我不明白为什么要以这种方式实现此方法

private class LinkedListIterator implements ListIterator
{
  . . .
   public boolean hasNext()
   {
      if (position == null)
         return first != null;
      else
         return position.next != null;
   }
   . . .
}
我可以用下面的方法来做吗

private class LinkedListIterator implements ListIterator
{
  . . .
   public boolean hasNext()
   {
      if (position.next == null)
         return false;
      else
         return true;
   }
   . . .
}

你可以用两种方法。这取决于班上其他同学的长相。如果您有一个“虚拟”节点,表示第一个元素之前的位置,则可以使用第二种方法。如果该位置由
position==null
表示,则必须使用第一种方法。就个人而言,我更喜欢虚拟节点方法,这样您就不必担心
null
检查