1.赋值创建

通过方括号[]赋值创建数组,示例代码如下

IDL> arr=[1,2,3]
IDL> help,arr
ARR INT = Array[3]
IDL> arr=[[1,2,3],[4,5,6]]
IDL> help,arr
ARR INT = Array[3, 2]

2.函数创建

利用数组创建函数可创建不同类型或维数的数组。

数组创建函数
数据类型 创建全0数组 创建索引数组
字节 bytArr() bindgen()
16位有符号整数 intarr() indgen()
32位有符号长整数 longarr() lindgen()
64位有符号整数 long64arr() l64indgen()
16位无符号整数 uintarr() uindgen()
32位无符号长整数 ulongarr() ulindgen()
64位无符号整数 ulong64arr() ul64indgen()
浮点数 fltarr() findgen()
双精度浮点数 dblarr() dindgen()
复数 complexarr() cindgen()
双精度复数 dcomplexarr() dcindgen()
字符串 strarr() sindgen()
指针 ptrarr  
对象 objarr()  

例如创建3x3初始值为零的字节类型数组,输入:

IDL> arr=bytarr(3,3)
IDL> help,arr
ARR BYTE = Array[3, 3]
IDL> print,arr
0 0 0
0 0 0
0 0 0

创建一个含有6个元素的浮点类型数组,初始值为从0到5,代码如下:

IDL> arr=findgen(6)
IDL> help,arr
ARR FLOAT = Array[6]
IDL> print,arr
0.000000 1.00000 2.00000 3.00000 4.00000 5.00000

创建特定类型或数值的数组可以用MAKE_ARRAY()函数,调用格式为

Result=MAKE_ARRAY([D1[,...,D8]],[,/INDEX][,DIMENSION=vector][,/NOZERO][,SIZE=vector][,TYPE=type_code][,VALUE=value])

IDL> arr=make_array(2,2,/integer,/index)
IDL> print,arr
0 1
2 3
IDL> arr=make_array(2,2,/integer,value=8)
IDL> print,arr
8 8
8 8

IDL 创建数组的更多相关文章

  1. android 创建数组

    一: private String[] data = new String[]{"Hello", "jike", "world"}; 二: ...

  2. 反射——反射API,使用反射创建数组

    反射API Java.lang.Reflect库 ①   Class类与Java.lang.Reflect类库一起对反射的概念进行支持. ②   java.lang包下: a)         Cla ...

  3. C语言: 创建数组的几种方法

    创建数组有三种方法 1.声明一个数组,声明时用常量表达式指定数组维数,然后可以用数组名访问数组元素 2.声明一个变长数组,声明时用变量表达式指定数组的维数,C99支持 3.声明一个指针,调用mallo ...

  4. PHP学习之中数组--创建数组【1】

    在PHP中数组的定义有三种写法,分别是: <?php //第一种方式是用关键字 array来创建的 $username = array("demo1","demo2 ...

  5. Powershell创建数组

    在Powershell中创建数组可以使用逗号. PS C:Powershell> $nums=2,0,1,2 PS C:Powershell> $nums 2 0 1 2 对于连续的数字数 ...

  6. Java 反射 Array动态创建数组

    Java 反射 Array动态创建数组 @author ixenos 注:java.lang.reflect.Array 是个反射工具包,全是静态方法,创建数组以多维数组为基准,一维数组只是特殊实现 ...

  7. javascript创建数组的所有方式【Array老师】

    1.采用直接量创建 var arr = [];//创建一个空数组 var arr2 = [1,2,3];//创建一个有三个元素的数组 2.采用构造函数创建 a.var arr1 = new Array ...

  8. IDL 使用数组

    1.下标方式 IDL> array=indgen(8) IDL> print,array 0 1 2 3 4 5 6 7 IDL> print,array[3] IDL> ar ...

  9. python创建数组的方法

    一 直接定义法: 1.直接定义 matrix=[0,1,2,3] 2.间接定义 matrix=[0 for i in range(4)] print(matrix) 二 Numpy方法: Numpy内 ...

随机推荐

  1. 机器学习实战之 第10章 K-Means(K-均值)聚类算法

    第 10 章 K-Means(K-均值)聚类算法 K-Means 算法 聚类是一种无监督的学习, 它将相似的对象归到一个簇中, 将不相似对象归到不同簇中.相似这一概念取决于所选择的相似度计算方法.K- ...

  2. nrm的安装 、定义和用法

    因为npm包管理工具是属于国外的,所以在中国使用它下载东西的时候比较慢.这时我们就想用国内的淘宝镜像.也有别的,所以当你想切换下载源的时候就会用到nrm了. ###首先,nrm是什么呢? 开发的npm ...

  3. 个人作业3——个人总结(Alpha阶段)

    个人总结 Alpha阶段总结: 起初关于手机app的开发真的一无所知,选了一条较远的路走(使用 Android Studio 来开发 Android 应用更加方便,而我们选用 Eclipse 开发 A ...

  4. 【Beta】 第三次Daily Scrum Meeting

    一.本次会议为第三次meeting会议 二.时间:10:00AM-10:20AM 地点:禹州楼 三.会议站立式照片 四.今日任务安排 成员 昨日任务 今日任务 林晓芳 查询app提醒功能模块和用户登录 ...

  5. 如何将ubuntu文件夹中文名改为英文

    其实我已经忍了很久. ubuntu在中文界面下面,自动创建了"桌面","文档",图片 .公共的 .下载. 音乐. 视频等中文目录. 在命令行下操作的时候,要么切 ...

  6. We Talk -- 团队博客

    WeTalk --在线群聊程序 团队博客 服务器一直在运行,使用客户端可直接登入使用.(做得很粗糙...) 客户端下载(java环境下直接运行) 0.项目介绍 现在我们网上交流离不开微信和QQ,当然在 ...

  7. 201521123022 《Java程序设计》 第十三周学习总结

    1. 本周学习总结 2. 书面作业 Q1. 网络基础 Q1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 前者IP ...

  8. 201521123053《Java程序设计》第十二周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 一些有关流与文件的知识点: 1. 字节缓冲流: BufferedInputStream(FileInputSt ...

  9. java 程序编写规则(自己总结)

    1.命名规范 (1)所有的标示符都只能用ASCⅡ字母(A-Z或a-z).数字(0-9)和下划线"_". (2)类名是一个名词,采用大小写混合的方式,每个单词的首字母大写.例如:Us ...

  10. Linux第二篇【系统环境、常用命令、SSH连接、安装开发环境】

    系统环境 我们知道Windows的出色就在于它的图形界面那一块,而Linux对图形界面的支持并不是那么友好-其实我们在Windows下对图形界面进行的操作都是得装换成命令的方式的! 当然了,我们在Ub ...