zoukankan      html  css  js  c++  java
  • UiPath

    在if活动里添加下面的条件:

    mystr IsNot Nothing And mystr.Contains('000')

    • 字符串的Contains()方法:参数是一个字符串,表示要去目标字符串中查找的文本。返回值是一个布尔值。例如'abcdefg'.Contains('bcd'),返回True。

    试想当变量mystr是Nothing时会发生什么?

    And运算符的逻辑是,不管每个条件的结果是什么,对所有条件都检查一遍。

    因此当变量mystr是Nothing时会发生异常,因为当检查到myStr.Contains('000')时,Nothing是没有Contains()方法的。


    现在我们把条件修改为:

    mystr IsNot Nothing AndAlso mystr.Contains('000')

    AndAlso运算符的逻辑是,先检查第一个条件,如果其结果为False,就不进行下一条件的检查了。因为“且”的逻辑是,第一个条件为False,不管后面的条件是True还是False,整个判断结果已经是False了。

    所以当变量mystr是Nothing的时候,第一个条件判断结果为False,就不会取判断下一个条件mystr.Contains('000')了。

    这种跳过条件的逻辑运算叫做短路(short-circuiting),类似的运算符还有OrElse

    实在弄不明白也没事,毕竟我们还可以嵌套if啊!

    ps.有可能断更一段时间的Level 2。

  • 相关阅读:
    Javascript创建对象的几种方式
    web化的远程桌面
    (原创) Asp.net XPS HighLight(高亮)CreateWatermark(水印 )
    C# 序列化和反序列化
    删除 HttpCookie
    (轉)AlertBox 彈出層(真的不錯哦)
    净高误差超过20mm
    如何处理并发
    ORM性能比对
    STL源码iterator和traits编程技法
  • 原文地址:https://www.cnblogs.com/TeresaMu/p/12023808.html
Copyright © 2011-2022 走看看