Solidity 中的条件执行2025年6月2日 | 阅读6分钟 Solidity 中的条件语句用于根据给定标准的执行情况执行部分代码。 当程序员想要使用代码执行的给定路径集之一时,通常会使用它。条件语句使程序仅在满足条件并返回布尔值 True 时才执行部分代码。 Solidity 使用的条件语句如下。
在本教程中,我们将详细介绍所有条件执行及其描述、语法和示例。 让我们开始吧。 If 条件IF 是基本且最常用的条件语句。 仅当满足特定条件时,代码才会被执行。 如果指定的标准返回布尔值 True,则将执行部分代码;否则,将不执行任何操作。 语法 例如 程序 1:在以下示例中,合约 Example 定义了一个无符号状态变量 x 和一个函数,用于显示 Solidity 程序中 if 语句的执行情况。 解释: 在上面的程序中,如果条件 x < 1000 满足,则条件将为 True,IF 块将被执行,并且程序将返回 True,否则条件不满足,将不会返回任何输出。 在我们的例子中,x = 1000,因此 x < 1000 将返回 False,因此不会返回任何输出。 输出 ![]() if...else 语句此条件语句是“IF”的扩展版本,因为它使程序能够在更精确的模式下执行条件。 如果条件返回布尔值 True,则执行 If 语句。 否则,对于布尔值 False,则执行 else 语句。 语法 程序 1:在以下示例中,合约 Example 定义了一个无符号状态变量 x 和一个函数,用于显示 Solidity 程序中 if-else 语句的执行情况。 解释: 在上面的程序中,我们使用了 if...else 条件执行。 如果 x%2 返回 0 作为输出,则条件将为 True,并且 IF 块将被执行,并且程序将返回布尔值 True,否则将返回布尔值 False。 在我们的例子中,x = 10,因此,if 条件 x %2 == 0 将返回 True,因此 IF 语句将被执行。 输出 ![]() if...else if...else 语句此条件语句是 if...else 的更新版本,因为它允许程序员在考虑不同条件的情况下做出某个决定。 如果满足标准 1,则将执行 IF 语句的代码块。 否则,它将检查 elseif 块的条件,如果它返回布尔值 True,则将执行 elseif 的代码块。 但是,如果 elseif 条件也失败(如果没有一个条件为 True),它将最终移动到 else 块,并且将执行 else 代码块。 语法 程序 1:: 在以下示例中,合约 Example 定义了一个无符号状态变量 x 和一个函数,用于显示 Solidity 程序中if...else if...else 语句的执行情况。 解释: 在上面的程序中,我们使用了 if...else if...else 条件来在考虑不同条件的情况下做出某个决定。 如果条件 x<200 返回 true,它将返回字符串“the number is less than 200”。 如果条件为 false,它将移动到 elseif 块,并将检查标准 (x ==200)。 如果满足条件,它将返回字符串“the number is equal to 200”。 如果 elseif 块也返回 False,则意味着没有一个条件为 True,最后将执行 else 块。 在我们的例子中,x = 10,因此,if 条件 x<200 将返回 True,因此 IF 语句将被执行,即“the number is less than 200”。 输出 ![]() 三元运算三元运算符是 Solidity 中的一种条件执行类型。 它的工作方式与使用三个操作数的 if 运算类似,即条件? 和:运算符。 在程序员想要使用更少的代码行并且想要在一行中编写一个简单的 if-else 语句的地方,三元运算符会派上用场,因为它会消耗更少的 gas。 语法 示例 程序:在以下示例中,合约 TernaryOperatorExample 定义了一个构造函数和一个函数,用于显示 Solidity 程序中三元运算符的执行情况。 解释: 在上面的程序中,我们使用三元运算符来查找哪个数字大于 x 或 y。 如果条件 x > y 返回 true,它将返回字符串“x is greater than y”。 如果条件为 false,它将返回字符串“y is greater than x”。 在我们的例子中,x = 500,y=1100; 因此,条件 x>y 将返回 false,因此将执行语句 2,即“y is greater than x”。 输出 ![]() 下一个主题Solidity 中的构造函数 |
我们请求您订阅我们的新闻通讯以获取最新更新。