![UiPath RPA开发:入门、实战与进阶](https://wfqqreader-1252317822.image.myqcloud.com/cover/221/39888221/b_39888221.jpg)
3.2.7 Array
数组(Array)类型,用于在程序中存储同一类型的多个值。Array中元素的个数在初始化时就已经固定了,后续使用时不能再增加和删除。当程序中需要保存同一系列的一串数据时,都可用Array类型,例如员工工资的各个组成部分、商品的各个部件等。
UiPath支持的Array类型和变量类型一样多,可以创建整数类型数组、字符串类型数组、布尔值类型数组等,其中数组的类型指的就是数组中元素的类型。但无论是什么类型,Array的值必须放在一对英文大括号中间,且每个值之间用逗号隔开,如{21,10,35}、{"张三","男","40"}等。
在需要取得Array中某个元素的值或为某个元素赋值时,可以使用下标来实现,具体表现形式为Array(Index)。Array的下标是从0开始计算的,也就是说数组中的第一个元素表示为Array(0)。如Array型变量EmpInfo的值为{"张三","男","40"},该数组的第一个元素EmpInfo(0)的值为"张三",第二个元素EmpInfo(1)的值为"男",第三个元素EmpInfo(2)的值为"40"。
Array的长度指的是Array中元素的个数,可以使用Array.Length获取,表示数组中有多少个相同类型的数据,如{1,2,3,4}.Length的结果为4。
Array型变量在Variables面板中的显示如图3-109所示。
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-109.jpg?sign=1738864645-cZHzgAv2JEbDL7sujdYBcGCY0xJ9w8Im-0-b21bd0b2eab8c46b376bad321ae59291)
图3-109 Array型变量示例
UiPath同样支持二维数组,即数组中的每个元素的数据类型还是Array类型,它的使用规范与一维数组十分相似,只是二维数组中的每个数组元素需要使用英文小括号括起来。例如:二维数组变量ClassSize存储了某中学三个年级各班级人数,它的值为{({32,31,35}),({32,37,34}),({36,39,38})},其中一年一班的人数ClassSize(0)(0)为32,一年二班的人数ClassSize(0)(1)为31,一年三班的人数ClassSize(0)(2)为35,二年一班的人数ClassSize(1)(0)为32,以此类推。
二维数组在Variables面板中的显示如图3-110所示。
Array型变量的具体创建与使用方法如例3.12所示。
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-110.jpg?sign=1738864645-6jLBQDd1ACotcBLEepWFSMlvvhPlLtbq-0-b9b322de033f83d90598661556f56a97)
图3-110 二维数组示例
【例3.12】使用Array变量完成打印员工信息的流程。员工信息由三部分组成,第一部分为姓名,第二部分为性别,第三部分为年龄。已知一名员工姓名为张鑫,性别为男,年龄为40,请将该信息存入Array变量中,并在Output面板输出数组中的信息。流程图如图3-111所示。
具体实现步骤如下所示。
1)进入Studio界面,点击Process创建一个新流程,命名为3_12_Array,如图3-112所示。
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-111.jpg?sign=1738864645-DSBeAfM020cyoHH807gFETqT6l58NieS-0-f18db4e68205cc5c8cefdc14e51d3ed0)
图3-111 流程图
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-112.jpg?sign=1738864645-FY4wQWrOwllVmi8C9xWJMM1lliAgvgNC-0-18c0ecf159afb421d53b3d4345c8eb7b)
图3-112 新建流程
2)拖入一个Sequence活动到设计器面板。在Properties面板中,将Sequence活动的DisplayName属性更改为“打印员工信息”,如图3-113所示。
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-113.jpg?sign=1738864645-vaNtow62hxvCj3eYT0gPxKqhyyBFfYGm-0-d79cfa312044848b061f00bac4195113)
图3-113 拖入Sequence活动并更改属性
3)在Variables面板中创建String型变量EmpName(默认值为张鑫)、EmpSex(默认值为男)及EmpAge(默认值为40),用于存储员工姓名、员工性别和员工年龄,如图3-114所示。注意这里使用一个String型变量来存储年龄,这样以后将它添加到String型数组变量时,就不必转换它了。
4)在Variables面板中创建Array型变量EmpInfo,用于存储员工信息。第一次使用时需要在Variable type下拉列表中选择Array of [T],如图3-115所示。
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-114.jpg?sign=1738864645-l1uyfvc0vsUaYrBV11GfjxkD1UKckTDo-0-c2b65e01b0a94bace90370760f74fa27)
图3-114 创建变量
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-115.jpg?sign=1738864645-6WBnmZxRcpLJjpTNxSbGuozYqCM0vwlU-0-ced6407c5a2f0b147756cadcba138f1c)
图3-115 更改变量数据类型为数组
5)系统随即会显示Select Types对话框,在下拉列表中选择String后点击OK按钮,如图3-116所示。
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-116.jpg?sign=1738864645-hMTAAaFvrcVnsLNccghpHsQj2VUnvCcw-0-bcb84cb878774dd8cdd8b4e514487a23)
图3-116 设置数组中元素数据类型
6)此时Variables面板中变量EmpInfo的数据类型被更改为String型的数组,如图3-117所示。
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-117.jpg?sign=1738864645-aCMoTfNInfE1zNbTpn9QMMjdEhlNXIIa-0-02ef4924327a8c0d45e68e44ccb076b2)
图3-117 更改变量数据类型后的Variables面板
7)拖入一个Assign活动到“打印员工信息”活动中。在Properties面板中,将DisplayName属性更改为“将员工信息存入数组”,在To属性中输入变量EmpInfo,在Value属性中输入“{EmpName,EmpSex,EmpAge}”,如图3-118所示。
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-118.jpg?sign=1738864645-mpmOw31c2rUexul9244iV1WdOCMdZ5dA-0-04a64813072bf1cc35e2303cae107a04)
图3-118 将员工信息存入数组
8)拖入一个Write Line活动到“打印员工信息”活动中。在Properties面板中,将DisplayName属性更改为“输出数组中的员工信息”,将Text属性更改为EmpInfo(0)+","+EmpInfo(1)+","+EmpInfo(2),如图3-119所示。
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-119.jpg?sign=1738864645-uq6PaIGxFMNbUJq3uRY1it3tcW0nSUqX-0-66b7b1aa891f229514c6b8258c2a2b2a)
图3-119 输出数组中的员工信息
9)按F5键执行流程,将在Output面板中显示执行结果,如图3-120所示。
![](https://epubservercos.yuewen.com/CF253F/20784355001359406/epubprivate/OEBPS/Images/3-120.jpg?sign=1738864645-nngOUvAgW26J4BD53tnuLWB2tqs3OmVg-0-8dcbb77db142a66df8df51f93465adeb)
图3-120 执行结果