¿Es posible hacer referencia a una variable con una cadena y un int?

¿Es posible hacer referencia a una variable con una cadena y un int, como esta:

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

El código anterior me da advertencias y no funciona, ¿cómo podría hacerse esto?

También probé esto, pero no funciona (por razones bastante obvias):

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

Realmente estoy luchando con esto, sé cómo hacerlo en Javascript, pero no en Obj-C, ¿es posible?

Este es un anti-patrón que yo llamo Poor Man’s Array. La mejor forma de hacerlo es utilizar una colección adecuada como una matriz en lugar de una serie de variables que están secretamente relacionadas. Hecho bien, el código con una matriz generalmente será mucho más corto y más limpio también.

Por lo que puedo inferir, estás tratando de establecer / recuperar diferentes variables basadas en el valor de j .

Puede usar un diccionario para este propósito:

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

Y luego para recuperar:

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

Es un poco detallado, pero podrías simplificarlo creando una clase pequeña.