UiBot命令里面数组和集合的区别在哪里
集合可视作一种特殊的一维数组,它和数组的不同之处主要有两点:
数组中的元素可以重复,而集合中的元素不允许重复。例如,[1, 2, 2, 3]是一个普通的数组,但如果将其转换为一个集合的话,就会剔除掉一个2,只保留1, 2, 3这三个元素。
数组中的元素是有序的,而集合中的元素是无序的。例如,往一个数组中依次添加元素1, 2, 3,往另一个数组中添加3, 2, 1,得到的会是两个不同的数组。而如果往两个集合中分别依次添加元素1, 2, 3和3, 2, 1,这两个集合仍然是等价的。
首先尝试创建一个集合。在命令列表中,找到“数据处理”下面的“集合”分类,选择并插入一条“创建集合”命令。该命令只有一个“输出到”属性,它会创建一个空集合,并将此集合置入ObjSet变量中。如果您熟悉UiBot的源代码视图,这里还有一个技巧:可以切换到源代码视图,把一个数组当作Set.Create命令的输入,可以直接把这个数组转换为集合。如果您还不熟悉源代码视图也没关系,UiBot的后续版本会允许在可视化视图中把数组转换为集合。
当创建一个集合后,还可以继续往这个集合中插入元素。使用“添加元素到集合”命令,该命令有两个属性:“集合”属性填写上一步创建的集合ObjSet;“添加元素”属性填写集合元素,可以是数字、字符串等,也可以是变量。
同一个集合中,能否既有数字元素,又有字符串元素呢?答案是肯定的!我们可以调用两次“添加元素到集合”命令,一次插入1,一次插入“2”,再输出调试信息,可以看到两个元素都成功的插入集合。
如果创建了多个集合,还可以计算它们的交集、并集(这些概念在初中数学课本中有阐述,如果您还不熟悉,可以忽略这段内容)。以取集合的并集为例。通过插入元素构建出两个集合,一个为{1, "2"},另一个为{"1", "2"}。添加一条“取并集”命令。该命令有三个属性:“集合”属性和“比对集合”分别填写需要合并的两个集合;“输出到”属性填写合并之后的集合变量。输出调试信息,可以看到合并之后集合变为{1, "1", "2"},这说明并集剔除了重复元素"2",1和"1"一个是数值,一个是字符串,不属于重复元素,因此同时选入并集。