是否有可能引用一个string和一个int的variables?

是否可以用一个string和一个int引用一个variables,如下所示:

int number1; int j = 1; @"number%i", j = 3; //Hope this makes sense.. 

上面的代码给我警告,不起作用,这怎么可能做到。

我也试过这个,但它不起作用(很明显的原因):

  int j = 1; NSString *refString = [NSString stringWithFormat:@"number%i", j]; refString = 3; 

我真的很挣扎,我知道如何在Javascript中做到这一点,但不是在Obj-C中,这有可能吗?

这是一个我称之为穷人阵的反模式 。 更好的方法是使用像数组这样的合适的集合,而不是一堆秘密相关的variables。 做得对,数组的代码通常会更短,更清洁。

从我可以推断你试图设置/检索基于j值的不同variables。

你可以使用字典来达到这个目的:

 NSMutableDictionary *numbers = [NSMutableDictionary dictionary]; int j = 1; [numbers setObject:[NSNumber numberWithInt:3] forKey:[NSNumber numberWithInt:j]]; 

然后检索:

 [[numbers objectForKey:[NSNumber numberWithInt:j]] intValue]; 

这有点冗长,但可以通过创build一个小类来简化它。