Java练习笔记(5)——实现链表

超类Object

  Object 该类的对象可以存储任何类型的变量,包括基本数据类型和引用数据类型。当我们定义它的对象数组后,
就可以将不同类型的值都传入到该数组,形成一个可以包含万物的数据结构。但问题是,超类的数组对象在我
们想要拿出来使用时,如何给值赋予原来的数据类型?答案是没有答案的。
	我们要如何解决这个问题?既然超类可以存储很多的值,那么当我们对值的存储进行一个限制的时候,能否
实现呢?

数据存储

 我们定义两个类A,B
	A:用来存储我们每次输入的数据
	B:用来对新数据和旧数据进行操作,实现两组数据的融合
接下来,我们需要有一个操作,可以使得我们每次输入的新值无缝衔接在旧数据的后面。这个问题的答案在下面。

链表

节点 链表中用来存储数据的对象
	节点由两个部分组成,数据和索引。数据用来存放本节点的值。索引用来存放下一个节点的地址。
那么最后一个节点,我们称为last节点,当有新的数据存入时,只需要将新数据的地址保存到last节点
的索引上,新的节点再标记为last节点,就可以不断的实现数据的add存储了。
public class Node {
    
    
 
 Object data;
 
 Node next;
 
 public void Node(Object data) {
    
    
  this.data=data;
  }}
public interface Link <E>{
    
    
 
 public void add(E e);
 public void del(E e);
 public void find(E e);
 public void remake(E e,E t);
}
public void add(E e) {
    
    
  
  Node newobj = new Node();
  newobj.data=e;
    if(head == null){
    
    
     head = newobj;
     last = newobj;
     index++;
    }else{
    
    
     last.next = newobj;  
     last = newobj;
     index++;
    }
 }

猜你喜欢

转载自blog.csdn.net/qq_42351519/article/details/110896647