ho l'impressione che l'errore derivi dallo scrivere male tutto: la tua condizione hasnext() quando diventerà false? Se ci fai caso avrai sempre e comunque degli elementi, perché tu controlli solo la head, non la tail.
Devi fermarti quando tail == next

Rispondi quotando