implementing iterator for linked list java
public class BasicLinkedList<T> implements Iterable<T> { public int size; private class Node { private T data; private Node next; private Node(T data) { this.data = data; next = null; } } private Node head; private Node tail; public BasicLinkedList() { head = tail = null; } //Add, remove method public Iterator<T> iterator() { return new Iterator<T>() { Node current = head; @Override public boolean hasNext() { return current != null; } @Override public T next() { if(hasNext()){ T data = current.data; current = current.next; return data; } return null; } @Override public void remove(){ throw new UnsupportedOperationException("Remove not implemented."); } };