我想字符轉換爲基於預定值的整數,例如:基於值數組將NSString轉換爲NSInteger的最佳方式是什麼?
a = 0
b = 1
c = 2
d = 3
等等
現在,我有做一個的if/else如果,我只是想知道我應該做的更快/更好的方式,因爲轉換列表可能會相當長。
下面是我使用的是什麼現在:
-(NSInteger)ConvertToInt:(NSString *)thestring {
NSInteger theint;
if([thestring isEqualToString:@"a"] == YES){
theint = 0;
} else if ([thestring isEqualToString:@"b"] == YES){
theint = 1;
} //etc...
return theint;
}
這工作得很好,但正如我所說,如果它更有意義我可以創建一個數組的所有鍵/值,然後僅僅通過運行返回整數?
請提供示例,因爲我是Objective C/iOS的初學者。我來自Web語言。
謝謝!
編輯:謝謝大家的幫助。我用taskinoors回答,但我換成這是給這個錯誤信息的NSDictionary:
NSDictionary *dict;
dict = [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithInt:0], @"a",
[NSNumber numberWithInt:1], @"b",
[NSNumber numberWithInt:2], @"c", nil];
對不起,我不太確定該怎麼做。你能告訴我如何使它成爲一個函數,我可以傳遞字符串「a」並返回一個整數。感謝您的意見。 – tsdexter 2012-04-09 19:48:14
我需要使用字符串,因爲我也會有值,例如「ab」傳入,這將需要返回一個整數。 – tsdexter 2012-04-09 19:50:31
@tsdexter如果你不明白這個例子,你應該更好地學習Objective-C和C. – 2012-04-09 19:50:31