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
,那么标量类型就会自动包装。