たとえば、次のように、あらかじめ決められた値に基づいて文字を整数に変換したいと考えています。
a = 0
b = 1
c = 2
d = 3
等...
現在、If/Else If でそれを行っています。変換のリストがかなり長くなる可能性があるため、より高速でより良い方法があるかどうかを知りたいだけです。
これが私が今使っているものです:
-(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];