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. jvm系列 (五) ---类加载机制

    类的加载机制 目录 jvm系列(一):jvm内存区域与溢出 jvm系列(二):垃圾收集器与内存分配策略 jvm系列(三):锁的优化 jvm系列 (四) ---强.软.弱.虚引用 我的博客目录 什么是类 ...

  2. ospf剩余笔记

    OSPF 流程图: 带宽 开销 10     100 100    19 1000   4 10000 2 区域的划分减少lsdb的大小 有利于网络管理员故障排除 网络故障不会影响到其他区域 邻接关系 ...

  3. 事后诸葛亮分析(Beta版本)

    全组讨论的照片 设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 解决代码分析.统计.管理等问题,定义的很清楚,有清晰的描述. 是否有充足的时间来做计划? ...

  4. Java程序设计——学生基本信息管理系统(团队+个人)

    学生信息管理系统(From:单身贵族) 团队部分 一.团队介绍("单身贵族"): 吴剑通[组长]:201521123056,唯一队员,网络1512班,团支书 二.项目git地址 三 ...

  5. linux(5)--补充(管道| / 重定向> / xargs)/find 与xargs结合使用/vi,grep,sed,awk(支持正则表达式的工具程序)

    本节中正则表达式的工具程序 grep,sed和awk是重点,也是难点!!! 先补充一下一. 管道| / 重定向> / xargs 如:1. 管道和重定向的区别:具体可以见 http://www. ...

  6. Spring - lookup-method方式实现依赖注入

    引言 假设一个单例模式的bean A需要引用另外一个非单例模式的bean B,为了在我们每次引用的时候都能拿到最新的bean B,我们可以让bean A通过实现ApplicationContextWa ...

  7. 用reduce实现阶乘计算

    def fact(a,b): return a*b from functools import reduce print(reduce(fact,range(1,6))) from functools ...

  8. jz2440重新分区

    在购买开发板的时候,板子上已经烧写好了bootloader.内核和文件系统.但是在具体使用时,发现板子上划分的内核分区只有2M,但是我编译出来的内核大于2M,于是将内核烧写到nandflash上面时会 ...

  9. Servlet 3.0 使用注解配置URl提示404错误

    我的环境是  Eclipse oxygen + Servlet 3.0 因为3.0已经开始使用注解了 之前我都是配置listenner 还有Servlet mapping  在 web.xml 中 就 ...

  10. (转)添加PROPAGATION_REQUIRES_NEW 事务没有产生作用

    最近在做事务添加时  发现自己的事务没有新建,上网查到   仅用作收藏. 其二  注意  事务的注解  应该在 内层的事务上面 一.描述 Spring遇到嵌套事务时,当被嵌套的事务被定义为" ...