为了账号安全,请及时绑定邮箱和手机立即绑定

用java泛型实现循环链​​表

用java泛型实现循环链​​表

慕妹3146593 2021-09-15 15:55:17
我正在学习 Java,我仍然是初学者。我编写了这段代码来实现一个循环链表,当我尝试打印列表时,它会不断打印数字。它看起来像是某种无限循环。我什至尝试使用调试,但它对我没有多大作用。如果您能查看代码并了解为什么会发生这种情况,我将不胜感激。这是下面的代码。我也会为我提供有关代码的反馈:) 这是循环链表的类public class CircularLinkedList<E> implements API<E> {    private Node<E> head;    private int size = 0;    public void placeAtBeginning(E element) {        Node<E> newNode = new Node<E>(element);        if(head == null) {            head = newNode;            head.setNext(head);        }else {            Node<E> temp = head;            head = newNode;            newNode.setNext(temp);        }        size++;    }    public void placeAtEnd(E element) {        Node<E> newNode = new Node<E>(element);        if (head == null) {            head = newNode;        }else {            Node<E> temp = head;            while (temp.getNext() != head) {                temp = temp.getNext();            }            temp.setNext(newNode);        }        newNode.setNext(head);        size++;    }    public void deleteFromBeginning() {        Node<E> temp = head;        while (temp.getNext() != head) {            temp = temp.getNext();        }        temp.setNext(head.getNext());        head = head.getNext();        size --;    }    public void deleteFromEnd() {        Node<E> temp = head;        while(temp.getNext().getNext() != head) {            temp = temp.getNext();        }        temp.setNext(head);        size--;    }    public void print() {        Node<E> temp = head;        while(temp.getNext()!= head) {            System.out.print(temp.getValue() + " , ");            temp = temp.getNext();        }        System.out.print(temp.getValue());    }}这是我的节点的类public class Node<T> {    private Node<T> next;    private T item;    public Node(T item) {        this.item = item;    }    public void setNext(Node<T> next) {        this.next = next;    }    public Node<T> getNext() {        return this.next;    }    public T getValue() {        return this.item;    }}
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 174 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号