站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题java链表问题:(

java链表问题:(

摘要: java链表问题:(


现在我在看java版的数据结构
看到链表不明
这是链表的结点

class Link
{
public int iData; // data item
public double dData; // data item
public Link next; // next link in list
// -------------------------------------------------------------
public Link(int id, double dd) // constructor
{
iData = id; // initialize data
dData = dd; // (-#39;next-#39; is automatically
} // set to null)
// -------------------------------------------------------------
public void displayLink() // display ourself
{
System.out.print(-#34;{-#34; + iData + -#34;, -#34; + dData + -#34;} -#34;);
}
} // end class Link


public Link next; // next link in list
还没有定义完类,怎么在这里就声明link类了啊,
我查了一下java api没有link类
还有这处
Link temp = first;
first = first.next;

 link中没有next
这里怎么用了next这个变量了
它说是自动添加next这我就不理解了
它是怎么自动添加的呢


我看了下java类库代码,
public class LinkedList-#60;E-#62;
extends AbstractSequentialList-#60;E-#62;
implements List-#60;E-#62;, Deque-#60;E-#62;, Cloneable, java.io.Serializable
LinkedList 后的<E>是什么意思啊,

大家觉得看类库的源码,是不是一种有效的学习方法呢





当你创建了class link,这是你就可以使用link这个类了。
不存在有没有完成的概念。

next是link类的实例变量,并且声明为public,
我们就可以通过link的一个对象来访问这个变量。

看类库的代码会养成很好的编程习惯,但是有没有效就很难讲。
因为我不是这么学的。
:)


-#60;E-#62;是模版呀,代表的是所有类型。


泛型-#60;E-#62;
规定链表中的数据类型

该类是自己定义的类在自己的类中使用
有点类似 递归方法 似的 在自己的方法中调用自己的方法


可能搂住是初学者,建议先不要接触这些关于java算法的东西,先搞好基础然后再作些bs方面的工作,回过头来再搞这个。


链表结点的定义原本就是递归定义.
有问题吗?


可能他的意思是想不利用 java.util.LinkList这个累自己写一个吧
提示1)
两个类,一个主类(link),一个内部类(推荐)element
link.head
link.end
link.add()--#62; new element 就是 head=new element(),end = head;
注意第一次加入内容的时候
还有一定要有保持 每个 element 有引用被其他对象所引用(要不给JVM回收了)


↑返回目录
前一篇: 关于HttpURLConnection接收大数据问题
后一篇: 初学者的问题