iOS switch的参数怎么使用NSString
答案:6 悬赏:20 手机版
解决时间 2021-03-27 17:10
- 提问者网友:愿为果
- 2021-03-26 20:07
iOS switch的参数怎么使用NSString
最佳答案
- 五星知识达人网友:话散在刀尖上
- 2021-03-26 20:16
实际上,object-c中switch的参数只能是int,byte,char,short的类型。
然而,经常要使用到NSString来作为参数,在这里举例说明一种间接实现的方法。这个方法一眼看上去好像不灵活限制了NSString参数的个数,但话说回来,既然用到了switch...case那么,所要传入的参数应该是有限和已知的。
//把用到的字符串参数放到一个数组里
NSArray *aName = [NSArray arrayWithObjects:@"lee",@"tom",@"vivid",@"liming",@"stormer",@"jun",nil];
//比如要把@"stormer"作为switch的参数,则取到它在数组中的下标,然后在switch中根据下标来进行处理。
int index = [aName indexOfObject:@"stormer"];
switch(index)
{
case 0: //xxxxx; break;
case 1: //xxxxx; break;
case 2: //xxxxx; break;
case 3: //xxxxx; break;
case 4: //这里就是stormer的代码处理部分; break;
case 5: //xxxxx; break;
....
}
然而,经常要使用到NSString来作为参数,在这里举例说明一种间接实现的方法。这个方法一眼看上去好像不灵活限制了NSString参数的个数,但话说回来,既然用到了switch...case那么,所要传入的参数应该是有限和已知的。
//把用到的字符串参数放到一个数组里
NSArray *aName = [NSArray arrayWithObjects:@"lee",@"tom",@"vivid",@"liming",@"stormer",@"jun",nil];
//比如要把@"stormer"作为switch的参数,则取到它在数组中的下标,然后在switch中根据下标来进行处理。
int index = [aName indexOfObject:@"stormer"];
switch(index)
{
case 0: //xxxxx; break;
case 1: //xxxxx; break;
case 2: //xxxxx; break;
case 3: //xxxxx; break;
case 4: //这里就是stormer的代码处理部分; break;
case 5: //xxxxx; break;
....
}
全部回答
- 1楼网友:蓝房子
- 2021-03-26 22:39
没有使用过NSString,你可以将string转化成integer,再用。
- 2楼网友:第幾種人
- 2021-03-26 22:31
据我所知,好像现在只有swift支持NSString类型,oc不支持,直接复制就可以switch(titleStr){
case "1"
..
}
case "1"
..
}
- 3楼网友:你哪知我潦倒为你
- 2021-03-26 22:07
你传进去一个
NSString
参数,然后用case判断这个参数对应的值,这样就使用了
NSString
了
NSString
参数,然后用case判断这个参数对应的值,这样就使用了
NSString
了
- 4楼网友:枭雄戏美人
- 2021-03-26 21:19
实际上,object-c中switch的参数只能是int,byte,char,short的类型。
然而,我们经常要使用到NSString来作为参数,我在这里举例说明一种间接实现的方法。这个方法一眼看上去好像不灵活限制了NSString参数的个数,但话说回来,既然用到了switch...case那么,所要传入的参数应该是有限和已知的。
//把用到的字符串参数放到一个数组里
NSArray *aName = [NSArray arrayWithObjects:@"lee",@"tom",@"vivid",@"liming",@"stormer",@"jun",nil];
//比如我们要把@"stormer"作为switch的参数,则取到它在数组中的下标,然后在switch中根据下标来进行处理。
int index = [aName indexOfObject:@"stormer"];
--------
int index = [diindexOfObject: inputValue];
--------
switch(index)
{
case 0: //xxxxx; break;
case 1: //xxxxx; break;
case 2: //xxxxx; break;
case 3: //xxxxx; break;
case 4: //这里就是stormer的代码处理部分; break;
case 5: //xxxxx; break;
....
}
http://blog.csdn.net/wide288/article/details/17454445原文
然而,我们经常要使用到NSString来作为参数,我在这里举例说明一种间接实现的方法。这个方法一眼看上去好像不灵活限制了NSString参数的个数,但话说回来,既然用到了switch...case那么,所要传入的参数应该是有限和已知的。
//把用到的字符串参数放到一个数组里
NSArray *aName = [NSArray arrayWithObjects:@"lee",@"tom",@"vivid",@"liming",@"stormer",@"jun",nil];
//比如我们要把@"stormer"作为switch的参数,则取到它在数组中的下标,然后在switch中根据下标来进行处理。
int index = [aName indexOfObject:@"stormer"];
--------
int index = [diindexOfObject: inputValue];
--------
switch(index)
{
case 0: //xxxxx; break;
case 1: //xxxxx; break;
case 2: //xxxxx; break;
case 3: //xxxxx; break;
case 4: //这里就是stormer的代码处理部分; break;
case 5: //xxxxx; break;
....
}
http://blog.csdn.net/wide288/article/details/17454445原文
- 5楼网友:鱼忧
- 2021-03-26 20:51
iOS swift的参数里使用NSString的方法如下:
//把用到的字符串参数放到一个数组里
NSArray *aName = [NSArray arrayWithObjects:@"lee",@"tom",@"vivid",@"liming",@"stormer",@"jun",nil];
//比如我们要把@"stormer"作为switch的参数,则取到它在数组中的下标,然后在switch中根据下标来进行处理。
int index = [aName indexOfObject:@"stormer"];
switch(index)
{
case 0: //xxxxx; break;
case 1: //xxxxx; break;
case 2: //xxxxx; break;
case 3: //xxxxx; break;
case 4: //这里就是stormer的代码处理部分; break;
case 5: //xxxxx; break;
....
}
//把用到的字符串参数放到一个数组里
NSArray *aName = [NSArray arrayWithObjects:@"lee",@"tom",@"vivid",@"liming",@"stormer",@"jun",nil];
//比如我们要把@"stormer"作为switch的参数,则取到它在数组中的下标,然后在switch中根据下标来进行处理。
int index = [aName indexOfObject:@"stormer"];
switch(index)
{
case 0: //xxxxx; break;
case 1: //xxxxx; break;
case 2: //xxxxx; break;
case 3: //xxxxx; break;
case 4: //这里就是stormer的代码处理部分; break;
case 5: //xxxxx; break;
....
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯