Objective-C if…else 语句
if
语句后面可以跟一个可选的 else
语句,该语句在布尔表达式为 false 时执行。
语法
Objective-C 编程语言中 if…else
语句的语法为:
if(boolean_expression) {
/* 如果 bool 表达式为 true,则这里语句会执行 */
} else {
/* 如果 bool 表达式为 false,则这里语句会执行 */
}
如果布尔表达式的计算结果为 true,则将执行 if
代码块,否则将执行 else
代码块。
Objective-C 编程语言假设任何 non-zero 非零值和 non-null 非空值为 true,如果为零或空,则假设为 false。
流程图
实例
#import <Foundation/Foundation.h>
int main () {
/* local variable definition */
int a = 100;
/* check the boolean condition */
if( a < 20 ) {
/* if condition is true then print the following */
NSLog(@"a is less than 20\n" );
} else {
/* if condition is false then print the following */
NSLog(@"a is not less than 20\n" );
}
NSLog(@"value of a is : %d\n", a);
return 0;
}
结果如下:
2022-07-07 22:04:10.199 demo[3537] a is not less than 20
2022-07-07 22:04:10.200 demo[3537] value of a is : 100
if…else if…else 语句
if
语句后面可以跟一个可选的 else-if…else
语句,这对于使用单个 if…else-if
语句判断各种条件非常有用。
当使用 if,else-if,else 语句时,需要记住几点:
if
可以有 0 个或一个其他 if,并且它必须位于任何其他 if 之后。- 一个
if
可以有 0 到多个其他 if,它们必须在 else 之前。 - 一旦
else-if
成功,其余的 else-if 或 else 都不会被执行判断了。
语法
Objective-C 编程语言中 if…else if…else
语句的语法为
if(boolean_expression 1) {
/* 如果 boolean_expression 1 表达式为 true,则这里语句会执行 */
} else if( boolean_expression 2) {
/* 如果 boolean_expression 2 表达式为 true,则这里语句会执行 */
} else if( boolean_expression 3) {
/* 如果 boolean_expression 3 表达式为 true,则这里语句会执行 */
} else {
/* 如果以上表达式都不为 true,则这里语句会执行 */
}
实例
#import <Foundation/Foundation.h>
int main () {
/* local variable definition */
int a = 100;
/* check the boolean condition */
if( a == 10 ) {
/* if condition is true then print the following */
NSLog(@"Value of a is 10\n" );
} else if( a == 20 ) {
/* if else if condition is true */
NSLog(@"Value of a is 20\n" );
} else if( a == 30 ) {
/* if else if condition is true */
NSLog(@"Value of a is 30\n" );
} else {
/* if none of the conditions is true */
NSLog(@"None of the values is matching\n" );
}
NSLog(@"Exact value of a is: %d\n", a );
return 0;
}
结果如下:
2022-07-07 22:05:34.168 demo[8465] None of the values is matching
2022-07-07 22:05:34.168 demo[8465] Exact value of a is: 100