7、链表(list)

1.什么是链表

  1. 是一种复合数据类型,可以包含变量、数组、结构体、对象、链表和哈希表等数据类型
  2. 链表中的元素是有次序的,可以通过索引来进行编辑操作

2.创建链表

Result=List([Value1,Value2,…,Valuen] [,/Extract] [,Length=Value] [,/NO_COPY])

IDL> list_ex=list('a',1,Ptr_New(5),{n:6})
IDL> help,list_ex
LIST_EX         LIST  <ID=7  NELEMENTS=4>

3.访问链表

类似于数组,是用下标索引来实现的

4.链表的其他操作

4.1 增加链表

list.Add,Value[,Index][,/Extraction][,/NO_TYPE]

例1:增加一个数——4
IDL> list=list(1,2,3)
IDL> list.Add,4
IDL> print,list
       1
       2
       3
       4
例子2:在位置0增加数100
IDL> list.Add,100,0
IDL> print,list
     100
       1
       2
       3
       4

4.2 删除链表

list.Remove [,Index][,/All]
or
Value=list.Remove([,Index][,/All])

例子
IDL> list1=list(1,'a',[2,3])
IDL> list1.Remove,[1]
IDL> print,list1
       1
       2       3

4.3 链表反转

功能就是实现链表中的元素位置的反转

IDL> list_ge=list(1,'a',[2,3])
IDL> list_ge.reverse
IDL> print,list_ge
       2       3
a
       1

4.4 链表转为数组

Result=list.ToArray([Missing=Value] [,Type=Value])

4.5 链表链接

两个或多个链表的连接与字符串一样用"+"来实现

4.6 链表比较

链表比较类似于数组比较,是对各元素的比较

4.7 销毁链表

可以用Obj_Destroy来销毁

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值