Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package structures;
- import java.util.Iterator;
- public class RecursiveList<Object> implements ListInterface<Object>{
- Node head;
- Node tail;
- Node current;
- public Iterator<Object> it;
- int size;
- public RecursiveList(){
- this.head = null;
- this.tail = null;
- this.size = 0;
- this.it = this.iterator();
- }
- @Override
- public Iterator<Object> iterator() {
- Iterator<Object> it = new Iterator<Object>(){
- Node n = head;
- public int currentPosition = 0;
- @Override
- public boolean hasNext() {
- return n.getNext() != null;
- }
- @Override
- public Object next() {
- currentPosition++;
- return (Object) n.getNext();
- }
- public void reset(){
- this.n = head;
- this.currentPosition = 0;
- }
- };
- return it;
- }
- @Override
- public int size() {
- return size;
- }
- @Override
- public ListInterface insertFirst(Object elem) {
- if(head != null){
- size++;
- Node n = new Node(elem,head);
- head = n;
- return this;
- }
- else{
- head = new Node(elem);
- tail = head;
- size++;
- return this;
- }
- }
- @Override
- public ListInterface insertLast(Object elem) {
- if(head != null){
- Node n = new Node(elem);
- tail.setNext(n);
- tail = n;
- return this;
- }
- else{
- head = new Node(elem);
- tail = head;
- size++;
- return this;
- }
- }
- @Override
- public ListInterface insertAt(int index, Object elem) {
- it.reset(); // should reset the the iterator object
- }
- public Node getNode(int i){
- }
- @Override
- public Object removeFirst() {
- // TODO Auto-generated method stub
- return null;
- }
- @Override
- public Object removeLast() {
- // TODO Auto-generated method stub
- return null;
- }
- @Override
- public Object removeAt(int i) {
- // TODO Auto-generated method stub
- return null;
- }
- @Override
- public Object getFirst() {
- // TODO Auto-generated method stub
- return null;
- }
- @Override
- public Object getLast() {
- // TODO Auto-generated method stub
- return null;
- }
- @Override
- public Object get(int i) {
- // TODO Auto-generated method stub
- return null;
- }
- @Override
- public boolean remove(Object elem) {
- // TODO Auto-generated method stub
- return false;
- }
- @Override
- public int indexOf(Object elem) {
- // TODO Auto-generated method stub
- return 0;
- }
- @Override
- public boolean isEmpty() {
- // TODO Auto-generated method stub
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement