IDL变量(数组,字符串,结构体,链表,哈希表)
程序员文章站
2024-03-24 22:31:34
...
文章目录
数组
1.创建数组
2.数组常用函数
详细函数使用参考博客:
1.https://www.cnblogs.com/wintertone/p/6596672.html
2.https://blog.csdn.net/weixin_43955546/article/details/104849612
3.部分函数注意提示:
1)uniq 是返回数组中相邻唯一值的元素,若需要返回全数组中的唯一值,可先对数组排序,再使用uniq函数。
IDL> a=[0,5,5,6,8,6,7]
IDL> a[uniq(a)]
0 5 6 8 6 7
IDL> a[uniq(a,sort(a))]
0 5 6 7 8
IDL>
2)determ 行列式求值函数
3)矩阵阶乘 a ## b
3.数组的动态扩展
字符串
1.创建字符串
1)直接赋值
IDL> str='abc'
2)字符串数组
strarr()
常用语dialog_message分行输出信息
IDL> a=strarr(2)
IDL> a[0]='li'
IDL> a[1]='hua'
IDL> a
li
hua
IDL> dialog_message(a)
3)特殊字符串
a.换行字符串
IDL> 'li'+string(13B)+'zi'
li
zi
b.空格字符串
IDL> 'li'+string(11B)+'zi'
lizi
2.字符串常用函数
详细字符串常用函数介绍参考:http://blog.sciencenet.cn/blog-346157-886252.html
注意:
a.数字转字符串且去空格:
IDL> string(10)
10
IDL> strtrim(10,2)
10
IDL>
b.字符串分割且提取内容strsplit,(strjoin的作用正相反)
IDL> strsplit('li_zi_jia','_',/extract)
li
zi
jia
IDL>
结构体
1.创建结构体
IDL> strut1={a:'li',b:1,c:intarr(3)}
IDL> strut1
{
"A": "li",
"B": 1,
"C": [0, 0, 0]
}
IDL>
2.结构体的使用
1)继承
2)add,remove
链表和哈希表
1.创建链表
链表创建完成,返回值为一个对象
IDL> lst1=list('li',2,intarr(3,2))
IDL> lst1
[
"li",
2,
[[0, 0, 0], [0, 0, 0]]
]
IDL>
2.链表的使用
3.哈希表
hash1=hash(key1,value1,key2,value2,key3,value3,…)
IDL> hash1=hash('a',100,'b','blue','c',intarr(3))
IDL> hash1
{
"c": [0, 0, 0],
"a": 100,
"b": "blue"
}
IDL>
4.哈希表的功能
参考文章:
http://blog.sina.com.cn/s/blog_5ea41d1901011va1.html
http://blog.sciencenet.cn/blog-346157-886252.html
上一篇: 多线程之GCD的简单使用