NSDictionary オブジェクトの配列があります。これらの辞書は、JSON ファイルから解析されます。NSDictionary のすべての値オブジェクトは NSString 型で、1 つのキーは「distanceInMeters」と呼ばれます。
NSPredicate を使用してこれらの配列をフィルタリングすることを計画していたので、次のように始めました。
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(distanceInMeters <= %f)", newValue];
NSArray *newArray = [oldArray filteredArrayUsingPredicate:predicate];
「distanceInMeters」キーの値が NSNumber の場合、これはうまくいくと思いますが、JSON ファイルから取得したため、すべてが NSStrings です。上記のエラーは次のとおりです:******* -[NSCFNumber length]: unrecognized selector sent to instance 0x3936f00***
NSString を NSNumber として扱おうとしたので、これは理にかなっています。
値がフィルタリングされている間に辞書から値をキャストする方法はありますか、それともこれを回避するまったく別の方法ですか?
誰かが私を助けてくれることを願っています:)