我有一个由NSNumbers组成的NSArray,我想将它转换为NSStrings的NSArray,通过在第一个数组中获取每个NSNumber的stringValue.
解决方法
NSArray以这样的方式实现
Key-Value Coding方法
valueForKey:
,它返回一个新的数组.新数组包含在原始数组中询问指定值的每个对象的结果.在这种情况下,NSNumber有它的stringValue,所以你只需要做:
NSArray * b = [a valueForKey:@"stringValue"];
然而,旧的快速枚举(或枚举对象的使用方法)并不是一个可怕的解决方案. NSArray的valueForKey的实现:最有可能在内部使用一个for循环,而且稍后再读取的任何人都会很容易理解.