Просто сохраните строки для ввода / вывода и используйте перечисление для всех ваших вычислений. Например, определите ваше перечисление:
typedef enum { ExtremelyLow, VeryLow, ... High } Rating;
Вы можете использовать это перечисление в switch
операторах и т. Д. Теперь вы можете использовать NSArray
или просто C-массив для отображения из литералов перечисления в строки:
NSString *RatingToString[] = { @"Extremely Low", @"Very Low", ..., @"High" };
Rating myRating;
NSString *strMyRating = RatingToString[myRating];
Переход от строковой версии к перечислению более сложен, вы можете использовать тот же массив RatingToString
и выполнять соответствующие сравнения (возможно, без учета регистра, нечетко и т. Д.). Вы также можете использовать NSDictionary
:
NSDictionary StringToRating = [NSDictionary dictionaryWithObjectsAndKeys: RatingToString[ExtremelyLow], [NSNumber numberWithInt:ExtremelyLow, ..., nil];
Теперь поиск будет точно соответствовать вашей строке и вернет Rating
в виде NSNumber
.