【UiPath】RPA Developer Foundation Class 1 Practice

一、Practice 1 找到数组中最大和最小值

思路:设置MAX和Min两个变量,遍历数组进行比较,将其中较小(较大)值存入变量即可。

收获:数据类型的转换问题

For Each中存放的是Object类型的数组,而我们想要进行处理的数据类型是System.int32[]类型

通过Integer.Parse()进行强制数据类型转化。

二、创建变量进行操作

这是一个测试问题,向我们展示了Genericvalue这种数据类型的用处,如果将四个变量分别存储为string和int,A+C和C+A是不能直接进行运算的。

GenericValue变量是一种可以存储任何类型数据的变量,可以叫做泛型,包括文本、数字、日期和数组,它是UiPath Studio特有的。

为了执行某些操作,GenericValue变量会自动转换为其他类型。

UiPath Studio将表达式中定义的第一个元素作为执行操作的准则。如果表达式中的第一个元素是整数或作为整数填充的GenericValue变量,UiPath Studio将执行元素的和。

如果表达式中的第一个元素是字符串或作为字符串填充的GenericValue变量,UiPath Studio将执行元素的串联。

因此在执行A+C时是执行的字符串拼接,而执行C+A是int型数据运算。

三、根据关键字进行数组分离

这个结果是参考资料,我自己在做的时候遇到了很多问题

这个问题实际上是:已知一个System.String[]类型的数组,通过识别其中的“Ax”、“Bx”和“Cx”来将其分别存入三个数组中

通过For Each循环对数据进行遍历然后通过switch进行筛选。

1.Switch语句的使用

Expression:判断条件

Case:出现的不同情况

Default:异常处理

对于这个情况,Expression究竟如何写才能准确得到想要的判断结果呢,

我刚开始想使用的是item.contains(),判断是否包含特殊字符,但是这种语句只能使用在if条件中,只会得到1/0

根据答案我才知道是要取字符串的前两位然后与“Ax”、“Bx”和“Cx”进行配对才能进行准确的匹配

所以使用的是item.substring()进行截取

2.对于数据类型的取用

UiPath的每个方法都可以设置其想要使用的数据类型

   TypeArgument

在数据处理的时候设置对应的数据类型就能避免对于数据类型进行变化的问题(之前没有很注意)

因为在Switch中处理的是单一的item,因此容易理解要设置为string类型

而对于For Each循环,本来以为要设置成System.string[]就是数组,因为处理的就是数组,但其实还是string类型,不然在后续处理中就会报错,可能是因为这样就将item识别为数组,就不能正确的使用方法了。

 

三、如何将识别到的数据存入数组

按照C的思路是

int a = array.length

array[a]= item

但是却不适用UiPath

 

提示索引超出数组边界

《解决方法》

对于如何将数据放入数组

使用的是array.Concat()

在网上找到的是用于连接两个或多个数组。 该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

是Mysql中的方法,只能说又学到了一种新操作了 - -

参考链接:

https://www.cnblogs.com/blossomhong/p/13383619.html

https://www.jianshu.com/p/a2371b5779d3

相关推荐:

类变量在多线程下的修改是否需要加锁(class 行为)

类变量被多个线程同时写入时不一定崩溃但一定存在竞态风险:自增等复合操作会丢失更新,赋值虽不崩溃却可能导致逻辑错误;必须用类级别Lock保护临界区,或用threading.local()实现线程隔离。 类变量被多个线程同时写入时一定会出问题 Python中的类变量(如MyClass.counter=0...

java的预定义Class对象的方法

今天小编给大家分享的是java的预定义Class对象的方法,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。基本的Java类型(boolean、byte、char、short、int、long、float和double)和关键字void通过cla...

python中class是不是可变的

小编给大家分享一下python中class是不是可变的,相信大部分人都还不怎么了解,因此分享这边文章给大家学习,希望大家阅读完这篇文章后大所收获,下面让我们一起去学习方法吧!python中有可变对象和不可变对象,可变对象:list,dict.不可变对象有:int,string,float,tuple...

Python中class如何继承

小编给大家分享一下Python中class如何继承,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!示例class parent(object):       def...

es6的class是不是严格模式

今天小编给大家分享一下es6的class是不是严格模式的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。 是严格模式。es6类和模块的内部,默认就是严格模式,所以不需要使用“usestri...

jquery class选择器如何用

这篇文章主要讲解了“jqueryclass选择器如何用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“jqueryclass选择器如何用”吧! 在jquery中,class选择器用于选取带有指定class的所有元素;class属性用于为多个HTML元素...

ES6中的class类知识点有哪些

这篇文章主要介绍了ES6中的class类知识点有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇ES6中的class类知识点有哪些文章都会有所收获,下面我们一起来看看吧。class简介传统的JS只有对象的概念,没有class类的概念,因为JS是基于原型的面向对象语言,...

es6的class是不是函数

本篇内容介绍了“es6的class是不是函数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! es6class是函数。在es6中,class(类)作为对象的模板被引入,可以通过class关键字定义类,语...