我有一个方法,执行20次。我的方法有一个参数,每次程序控件进入方法时都有20个唯一值(整数值从1到20)。整数值以随机顺序生成。第一次进入方法时,争论可能具有值'n',第二次可能具有值(n-3),第三次可能具有值(n + 6),依此类推。现在我正在使用switch case方法来处理这个问题。也就是说,这里我有20个案例,我正在处理使用switch-case的20个案例。有没有更好的方法,我可以处理这种情况,即没有编写20个开关案例?
- (CGFloat)methodName:(NSIndexPath *)indexPath{
numberOfLines = //gets this value after some complex calculations.
switch(indexPath){
case 0:
//statement
return numberOfLines*35;
break;
case 1:
//statement
return numberOfLines*35;
break;
….
…….
20 cases
}
return 35;
}
答案 0 :(得分:1)
这实际上取决于您在switch语句中所做的工作类型。例如,如果您只是根据输入返回一个值,则可以将NSDictionary映射整数构造为某个值。或者更好的是,如果输入确实是一系列连续的整数,那么预定义的数组也可以工作。