Menu

Bug in Graph.getVertices().iterator()

Jodokos
2004-12-10
2013-05-29
  • Jodokos

    Jodokos - 2004-12-10

    when using Graph.getVertices().iterator(), the iterator misses the first vertex added in the graph, eg:

    For the vertices:
    ----------------
    vertex v1
    vertex v2
    vertex v3

    Iterator i = g.getVertices().iterator();

    for( vertex v = i.next(); i.hasNext(); v = i.next() )
    //Do something

    returns only v2 and v3.
    g.getVertices().toArray() returns all vertices.

     
    • Dirk Koschuetzki

      Hello,

      The problem is your call for next() in the for loop:
      for( vertex v = i.next(); i.hasNext(); v = i.next() )

      the first expression skips the first element.

      Please try:
      ;

      for(Iterator i = g.getVertices().iterator();
           i.hasNext(); /* EMPTY */  )  {
              Vertex v = (Vertex) i.next()
              //Do something
      }

      Dirk

       
    • Jodokos

      Jodokos - 2004-12-14

      aaah, my mistake, its a long timme since i last used the iterator interface ;-)

      thx for the patience!

       

Log in to post a comment.