在上一节代码课中,您学习了如何使用条件语句让自己的应用程序执行不同的操作。在本课中,您将学习逻辑运算符。逻辑运算符(Logic operators)使计算机能够基于多种条件做出决策。在App Inventor中,这些代码块需要两个输入。在本节中,您将学习三种主要的逻辑运算符: and(与), or(或), 和 not(非)。
and(与)运算符
当所有输入条件都为真时,and运算符将输出为真。如果任何输入条件为假,它将输出假。下面是使用and运算符时可能出现的所有结果。
下面是如何在条件语句中使用and的用法:
注意:使用and运算符与使用else if语句不同,因为两个条件是在同一时间而不是一个接一个地求值的。
示例
当需要让两个条件都为真时,应该使用and,以执行某种操作。 以下是一些您可能想在应用程序中使用and的示例。 想象您的应用允许人们登录。您希望他们只能在用户名和密码正确都正确,才能登录您的应用程序。您的应用程序应当:
● If (用户名正确) and (密码正确) → then 允许用户登录
● If 其中一个是错误的 → then 不允许用户登录
这是您在App Inventor和Thunkable中的两个条件。
这是在and代码块中的两个条件。
App Inventor
Thunkable
现在,您可以将它们放入if语句中。 只有两个条件都为真,则此if语句允许此人登录。
以下是可以用到and的一些场景:
● 赢得一场比赛
○ If (玩家完成关卡) and (游戏时间还没结束) → then用户赢了
● 在附近找到一家杂货店:
○ If (商店开了) and (商店在用户附近) →在搜索结果中显示
● 发布带标题的图片:
○ If (用户选择了图片) and (用户输入了标题) → then允许用户发布这张图片
● 您能想到更多示例吗?
Or(或)运算符
为了使or运算符输出真,只需其中一个输入为真即可。 这是使用or运算符时所有可能的结果。
下面是如何在条件语句中使用or的用法:
注意:对您来说or运算符也可能看起来与else if类似。or运算符之所以不同,是因为它要同时评估两个条件,而不是一个接一个地求值。 如果您有两个条件,如果都为真,应该具有相同的结果,则使用or运算符更好。
示例
以下是您可能需要使用或在您的应用程序中使用的一些示例。想象您正在创建一个游戏。 您希望游戏在时间耗尽或玩家角色所有生命耗尽时结束。
这是您在App Inventor和Thunkable中的两个条件。
这是在or代码块中的两个条件:
现在,您可以将它们放入if语句中。 如果至少一个条件为真,则此if语句将结束游戏。
以下是可以用到or的一些场景:
● 显示搜索结果
○ If (标题匹配) or (描述匹配) → then在搜索结果中显示
● 向用户推荐视频
○ If (用户的朋友喜欢) or (和用户喜欢的东西类似) → then将其推荐给用户
not(非)运算符
not运算符将输入条件的值切换为与之相反的值。
在条件语句中,可以这样思考:
示例
在您的魔法8号球应用程序中,您想查看用户是否已在文本框中输入问题,可以使用not运算符来确保文本框不为空。 这是App Inventor中的条件:
您可以这样将条件放入if语句中。
只有在文本框不为空的情况下,则此if语句才会为用户提供答案。
以下是可以用到not运算符的一些场景:
● 您要排除有关小狗的搜索结果,因此您可以使用not运算符检查单词“小狗”。
○ If not (文章中包含“小狗”一词) →then 显示结果
● 您可以组合逻辑运算符来做更多的事情。比如,可以按以下方式显示带有“小猫”一词而没有“小狗”一词的搜索结果。
○ If not (文章中包含“小狗”一词) and (文章中包含“小猫”一词) → then显示结果