Objective-C 上的 Switch 语句不起作用
Switch statement on Objective-C not working
我刚刚学会了如何使用 switch 语句,我正尝试在我的项目中实现它,但行不通。
int x;
x = arc4random()%5;
switch (x) {
case '0':
NSLog(@"0");
break;
case '1':
NSLog(@"1");
break;
case '2':
NSLog(@"2");
break;
case '3':
NSLog(@"3");
break;
case '4':
NSLog(@"4");
break;
default:
break;
}
这是我的代码行,我查看了多个示例,没有发现我的代码有任何问题。
我认为这与它位于 viewDidLoad
内部有关,因为这是我查看的示例与我的代码之间唯一不同的地方。
您正在针对字符而不是整数值进行测试。
您需要使用不带引号的 case 0
、case 1
等。
去掉撇号,它应该可以正常工作。添加像 case '0':
这样的撇号可以测试字符串输入。像 case 0:
这样写将使其测试整数输入。
我刚刚学会了如何使用 switch 语句,我正尝试在我的项目中实现它,但行不通。
int x;
x = arc4random()%5;
switch (x) {
case '0':
NSLog(@"0");
break;
case '1':
NSLog(@"1");
break;
case '2':
NSLog(@"2");
break;
case '3':
NSLog(@"3");
break;
case '4':
NSLog(@"4");
break;
default:
break;
}
这是我的代码行,我查看了多个示例,没有发现我的代码有任何问题。
我认为这与它位于 viewDidLoad
内部有关,因为这是我查看的示例与我的代码之间唯一不同的地方。
您正在针对字符而不是整数值进行测试。
您需要使用不带引号的 case 0
、case 1
等。
去掉撇号,它应该可以正常工作。添加像 case '0':
这样的撇号可以测试字符串输入。像 case 0:
这样写将使其测试整数输入。