我被要求从头开始创建和管理一个链接列表,而不使用java util。
如果我要创建一个有多个属性的对象,例如name &那么是否可以将对象存储在链接列表中?
我很难理解这一点,如果有任何帮助,我将不胜感激!
下面是我的伪代码:类:节点LList人地址
add_person
sout "Enter name"
scan.next(String name)
pass name to setName (a Person class function)
sout "Enter postcode"
scan.next(String postCode)
pass postCode to setPostCode (a Address class function)
那么我该如何在同一个链接列表中将这两个信息链接在一起呢?
编辑:谢谢你们的建议,我会根据你们的建议好好阅读的!再次感谢!:)试着查找链表是什么以及它需要如何构造。您的伪代码与链表无关,只有一些基本的数据输入。我建议你看看下面的链接,了解它是什么以及它是如何工作的。一旦理解了结构,实际的编码就相当简单了。
我鼓励别人不要帮你做作业。
维基百科这并不太难,您只需要创建自己的Node类。这个类可能看起来像这样:
public class Node{
protected String name;
protected int age;
//any additional data you need...
protected Node next;
//methods...
该类将包含许多数据字段,并提供与这些字段交互的方法。关键组件是"受保护的节点next"行,它是链表中的下一个节点。列表中的所有节点都有下一个节点,除了尾部。尾部节点将next设置为null。
首先需要定义一个链表的基本构建块,它是Node。节点就像存储您想要的任何东西的容器。这就是为什么storedData变量是Object类型。你可以这样定义它:
public class MyNode{
Object storedData; // this is a reference to the object that you want stored in the list
MyNode next; //this is a reference to the next node in your list
...
}
然后你可以定义你的链表类,就像这样:
public class MyLinkedList{
MyNode head; //this is a reference to the top element of your list
int nodeCount //
//put all the requkired methods here
}
你应该自己写一个使用泛型的LinkedList;让它处理任何对象类型
你的姓名、邮编、年龄等等都应该被封装在一个对象中,这样你就可以把它添加到LinkedList上。
package linkedlist;
public class Node<T> {
private Node<T> prev;
private Node<T> next;
private T value;
}