开发者学堂课程【【名师课堂】Java面向对象开发:链表(链表数据转换为对象数组)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/371/detail/4521
链表(链表数据转换为对象数组)
链表简介
取得全部数据:public object [] toArray()
首先链表是一个动态对象数组,那么必然是动态对象数组,返回的内容也一定是一个对象数组。
但是如果要想进行数组的返回,首先必须要开辟一个数组(数组长度就是count属性内容),同时这个数组内容的填充应该依次将节点中的数据取出才可以正常完成。
在 Link 类中一定会存在一个 toArray() 的方法,该方法的返回值一定是 Object[]。
所有在返回的对象数组中的数据都在 Node 类里面,那么就证明这些数据应该在 Node 类中利用递归来依次取出;那么应该在外部类中 Link 类中定义一个返回类型的属性;
private Object[] retData ; //返回类型
private int foot=0;//操作脚标
public Object[]toArray () {
if (this.count ==0){
return null ;
)
//现在链表中存在有数据,则开辟指定长度的数组
//该数组一定要交给 Node 类进行处理。
this.retData = new Object[ this.count] ;
this.foot = 0 ; //进行清零的处理,需要进行脚标操作
)
在 Node 类中处理节点数据:
//第 1 次调用:this = Link.root
// 第 2 次调用:this = Link.root.next
public void toArrayNode (){
Link.this.retData[Link.this.foot++]=this.data
if(this.next!=nu11){//现在还有下一个节点
this.next.toArrayNode();
}
}
数据的存储和返回是在开发之中链表使用最多的功能。
Object result []= all.toArray () ;
for (int x = 0 ; x <result.length ; x ++){
system. out.println (result[x]);
}I