变量(Variable)是用来保存一个数据的,数组(Array)是用来保存一系列数据的。比如,我们可以把一个班里所有人的名字保存到一个数组之中。事实上,你可以把数组理解为“最简单形式的数据库”,或者“只有一列数据的表单”。
Dim$name[5]
$name[0]=”Tom”
$name[1]=”Jerry”
$name[2]=”Mike”
$name[3]=”Joey”
$name[4]=”Jane”
注意,方括号内的“下标”,是zero-based,即,从零开始。所以,在第1行代码中我们定义了一个总计有5个元素的数组,名称是$name,第一个元素用$name[0]表示,最后一个元素用$name[4]表示。数组中的每一个元素,相当于一个变量,可以保存一个数据。
用一个循环语句,就可以遍历(逐一访问,或读,或存)所有元素:
For$i=0To4
MsgBox(0,$i,$name[$i],1)
Next
数组的操作向来很麻烦。不过,幸运的是,AutoIt安装的过程中提供了很多UDF,即所谓的“用户自定义函数库”。UDF,是User Defined Function的首字母缩写。AutoIt是免费开源的软件,所以有很多人参与了开发过程,同时写了许多各式各样的,能够完成特定功能的函数。一旦你需要使用数组,最方便的方法就是直接调用一些UDF中的函数。
引用UDF函数库的方法是在程序开头添上这样一句:
#include
之后,你就可以用_ArraySort()为某个数组排序,用_ArraySwap()为某两个元素调换位置,用_ArrayDisplay()显示一个数组内容,或者用_ArrayUnique()查询某个元素的值在整个数组中是否是唯一的……
UDF中关于数组管理的所有函数……
如果一个数组是“动态形成的”,或者,在程序运行过程中,数组增加或减少了一些元素,那么我们可以用UBound()函数得知某个特定数组的元素数量。
新建一个AutoIt文件,将其命名为Testing15.au3,输入以下代码,并按F5运行,查看结果:
#include
Dim$name[5]
$name[0]=”Tom”
$name[1]=”Jerry”
$name[2]=”Mike”
$name[3]=”Joey”
$name[4]=”Jane”
For$i=0To4
MsgBox(0,$i,$name[$i],1)
Next
_ArrayDisplay($name)
_ArrayAdd($name,”Mary”)
_ArrayDisplay($name)
MsgBox(0,”Info”,”Now the array $name has “&UBound($name) &” elements…”)
_ArraySort($name)
_ArrayDisplay($name)
_ArrayReverse($name)
_ArrayDisplay($name)
注意:当_ArrayDisplay()显示对话框的时候,程序会暂停,知道你按关闭按钮关闭该对话框之后,程序将继续运行。
作业:
把所有UDF中的关于数组管理的函数都拿出来调用、试验一遍。与此同时,还要“硬着头皮”精读每个函数的帮助文档……
提示:调用每个函数之后,都可以调用_ArrayDisplay()来查看数组的内容变化……
