【问题标题】:Java Nodes LinkedListJava 节点链表
【发布时间】:2014-11-01 11:46:06
【问题描述】:

Java 节点/链表(基于指针) 该程序基本上是一个包含学生属性的节点:

名字 姓 年龄 ID 专业

有 3 个类: 1-节点类 2-方法的类(在开头添加,最后添加,搜索等。 3 - 测试类

我面临的问题是我对如何将所有学生属性包含到一个节点中感到困惑。

现在添加一个整数的节点类(1)的一个例子是:

public class IntNodeF14
{
  int item; 
  IntNodeF14 next;
}

如何创建一个接受所有学生属性的节点

【问题讨论】:

    标签: java nodes


    【解决方案1】:

    让你的类通用:

    public class NodeF14<T>
    {
      NodeF14<T> next;
      T data;
    }
    

    data 将保存单个节点的数据。

    然后您可以为您需要的任何类型的数据创建一个NodeF14

    例如:

    Student student = new Student (firstName,lastName);
    NodeF14<Student> studentNode = new NodeF14<Student> (student);
    

    如果您不能使用泛型,则必须在 Node 类中包含所有属性(或持有所有属性的 Student 成员),但在这种情况下,您的列表将仅支持一种类型的数据。

    【讨论】:

    • 学生 student = new Student(firstName,lastName);在测试类中,但是我在将应用函数的类中放什么(最后添加并在开头添加等)?
    • 假设在函数类中添加开始函数是这样的: public void Addb(int x) { IntNodeF14 NewN= new IntNodeF14();新N.item = x; NewN.next=第一个; if(Empty()) { First=NewN;最后=第一个; } else First=NewN;计数++; } (但这是一个整数)在学生多个属性的情况下,我该怎么办?提前致谢!
    • Add(int x) 将一个 int 添加到列表中,使其成为 int 的链接列表。你需要一个泛型类,我们称之为 LinkedList,它包含 T 类型的元素。add 方法将接受泛型参数 T。然后,如果你创建一个学生列表:LinkedList list = new LinkedList (),你可以用list.add(student)添加一个学生。
    • 学生 student = new Student (firstName,lastName); (包含在测试类中) NodeF14 studentNode = new NodeF14 (student); (函数类)对吗?
    • 假设 public void Addb(String firstname, String lastname, int ID) { NodeF14 NewN= new NodeF14(); NewN.data=名字; NewN.next=第一个;我怎样才能将它应用到姓氏和 ID 上
    猜你喜欢
    • 2018-05-05
    • 1970-01-01
    • 1970-01-01
    • 2015-03-11
    • 2023-03-24
    • 2020-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多