A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

public void add(Object obj){
if(first==null){
Node n=new Node();
n.setPrevious(null);
n.setObj(obj);
n.setNext(null);
first=n;
last=n;
}else{
Node n=new Node();
n.setPrevious(last);
n.setObj(obj);
last.setNext(n);//是这么写,为什么这么写,下面的语句不是把last给覆盖掉了么,真不知道这语句有何用,但是少了这语句,使用get(index)读取时马上报错
last=n;
}
size++;


Node 的类是这样的
package collction;


public class Node {
Node previous;
Object obj;
Node next;
public Object getPrevious() {
return previous;
}
public void setPrevious(Node previous) {
this.previous = previous;
}
public Object getObj() {
return obj;
}
public void setObj(Object obj) {
this.obj = obj;
}
public Object getNext() {
return next;
}
public void setNext(Node next) {
this.next = next;
}

}

评分

参与人数 1黑马币 +10 收起 理由
大师兄与二师兄 + 10 赞一个!

查看全部评分

1 个回复

倒序浏览
这是链表呀。last始终指向最后一个,当将n加入之后,n就是最后一个了,这时候就需要将游标指针也就是last指向n 学数据结构的时候用的c语言实现的,这个应该差不多
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马