我试图找出(如果可能的话)如何使用switch语句而不是for循环来读取NSDictionay键/值。
目前我在做这个
for (id key in seriesData) {
NSLog(@"key: %@, value: %@", key, [seriesData objectForKey:key]);
}
但是我希望它是一个switch语句,在那里我寻找密钥,如果找到了密钥,那么我将该值放入一个我稍后将使用的变量中。
希望这是有道理的,任何帮助将不胜感激。
答案 0 :(得分:3)
C switch
语句仅适用于类似整数的键(包括enum
)。无法将switch
与Objective-C对象一起使用,例如在NSDictionary
中找到的对象。
答案 1 :(得分:0)
如果您熟悉使用块,则可以使用基于块的枚举方法enumerateKeysAndObjectsUsingBlock。
另外,如果你想“过滤”键;因为有特定的键子集(例如以“A”开头的键),你可以使用其中一种谓词方法,如keysOfEntriesPassingTest。
所有这些都记录在NSDictionary类引用中。