永发信息网

iOS switch的参数怎么使用NSString

答案:6  悬赏:20  手机版
解决时间 2021-03-27 17:10
iOS switch的参数怎么使用NSString
最佳答案
实际上,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,你可以将string转化成integer,再用。
据我所知,好像现在只有swift支持NSString类型,oc不支持,直接复制就可以switch(titleStr){
case "1"
..
}
你传进去一个
NSString
参数,然后用case判断这个参数对应的值,这样就使用了
NSString
实际上,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原文
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;
....
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我买的卡宴是3.0T发动机上是3.0V6,是什么意
永恒纪元,当疲劳值满了无法攻击boss该怎么化
有必要用专业级HIFi刻录机刻录高保真音频CD吗
你好已经做好了门牌叫【河套炒货】但审查不能
三国大时代4的所有宝物分别在哪里?
45乘30的竖式计算方法
团葱炖猪肚的功效
请问一下139开头后面5尾数是连号的电话号码值
谁能告诉我一种放置时间长用微波炉加热的主食
哪里的厂家生产液压棉花打包机啊 质量要好 价
福建仙游华侨中学历年的中考录取分数线
我的qq被人在国外异常登录申诉了但很多资料忘
什么传统书籍
中国注册会计师民事责任的现状?(注册会计师
你会玩“二十四点”游戏吗?请你在“2,-4,1
推荐资讯
牛蛋怎么煮里边能变黄
君子怀德,宽则得众是神马意思
下面对联横线处填入汉字恰当的一项是(3分)
夫妻磨合多年了,为啥老公还是那么自私,懒惰
王者荣耀急速秘法是多少区
母乳为什么是血形成的
我在即有分期了一台手机2798元,分的12期,每
As rule, apples are sold by weight and egg
潋滟怎么读音是什么
chemical or organic farming 的英文全文
明洋快运(东兴街轴承道口明洋快运)地址在哪,
具体到“押韵”如何应用???
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?