Objective c 使用valueForKey将字符串数组转换为nsnumbers数组

Objective c 使用valueForKey将字符串数组转换为nsnumbers数组,objective-c,nsstring,nsmutablearray,nsnumber,Objective C,Nsstring,Nsmutablearray,Nsnumber,我有一个包含数字的字符串数组。因此,如果有一种从NSString获取NSNumber的方法,那么很容易获得一个数字数组: [arrayOfStrings valueForKey:@"NSNumberValue"] 但要将字符串转换为数字,必须执行以下操作: [NSNUmber numberWithInt:[string intValue]]; 我想知道是否有任何方法可以在不手动迭代数组的情况下完成此操作?NSArray*arrayOfNumbers=[arrayOfStrings value

我有一个包含数字的字符串数组。因此,如果有一种从
NSString
获取
NSNumber
的方法,那么很容易获得一个数字数组:

[arrayOfStrings valueForKey:@"NSNumberValue"]
但要将字符串转换为数字,必须执行以下操作:

[NSNUmber numberWithInt:[string intValue]];

我想知道是否有任何方法可以在不手动迭代数组的情况下完成此操作?

NSArray*arrayOfNumbers=[arrayOfStrings valueForKey:@“intValue”]

NSArray*arrayOfNumbers=[arrayOfStrings valueForKey:@“intValue”]

[[arrayOfStrings objectAtIndex:index]intValue]@BHASKAR“不手动迭代数组”[[arrayOfStrings objectAtIndex:index]intValue]@BHASKAR“不手动迭代数组”+1。解释:问题假设您需要类型为
NSNumber*
的属性
NSString
。但是,KVC会自动将标量数字类型包装到
NSNumber
对象中。所以,您只需要一个标量数字类型的属性,就像
-intValue
。毕竟,
valueForKey:
也可以处理标量属性,并且如果它返回
id
,那么标量类型将被自动包装。解释:问题假设您需要类型为
NSNumber*
的属性
NSString
。但是,KVC会自动将标量数字类型包装到
NSNumber
对象中。所以,您只需要一个标量数字类型的属性,就像
-intValue
。毕竟,
valueForKey:
也可以处理标量属性,并且如果它返回
id
,那么标量类型就会自动包装。