Appearance
条件语句
Solidity 支持条件语句。条件语句允许在程序中执行不同的代码块,具体根据条件表达式是否为真来决定执行哪个代码块。
分类
在 Solidity 中,常见的条件语句有 if 语句、if-else 语句和 switch 语句。
示例 if
下面是一个简单的 if 语句的示例代码:
solidity
pragma solidity ^0.8.0;
contract ExampleContract {
uint public x = 0;
function setValue(uint value) public {
if (value > 10) {
x = value;
}
}
}在上面的代码中,如果传入的 value 大于 10 ,则 x 的值将被设为传入的 value。
示例 if-else
下面是一个 if-else 语句的示例代码:
solidity
pragma solidity ^0.8.0;
contract ExampleContract {
uint public x = 0;
function setValue(uint value) public {
if (value > 10) {
x = value;
} else {
x = 0;
}
}
}在上面的代码中,如果传入的 value大于 10,则 x 的值将被设为传入的 value ,否则 x 的值将被设为 0。
示例 switch
最后,下面是一个 switch 语句的示例代码:
solidity
pragma solidity ^0.8.0;
contract ExampleContract {
uint public x = 0;
function setValue(uint value) public {
switch(value) {
case 1:
x = 10;
break;
case 2:
x = 20;
break;
default:
x = 0;
break;
}
}
}在上面的代码中,如果传入的 value 等于 1 ,则 x 的值将被设为 10 ,如果传入的 value 等于 2,则 x 的值将被设为 20 ,如果传入的 value 既不是 1 也不是 2,则 x的值将被设为 0。