我见过这个question,但已经2岁了。是否有更好的\更容易\更新的方法来检查字符串是否具有数值。例如1或1.54或-1或-1.54等等。
答案 0 :(得分:7)
bool status;
NSScanner *scanner;
NSString *testString;
double result;
scanner = [NSScanner scannerWithString:testString];
status = [scanner scanDouble:&result];
status = status && scanner.scanLocation == string.length;
如果status == YES,则字符串为完全数字。
或者@Dave指出SO answer:
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
number = [formatter numberFromString:string];
status = number != nil;
(我没有泄漏,我正在使用ARC: - ))
答案 1 :(得分:-1)
您可以使用[NSString floatValue]