2015-09-24 34 views
-2

我想检查一个文本字段的输入值是浮动还是整数,其余是字符串。我想检查一个文本字段的输入值是浮动或int或字符串在iOS

例如,如果用户在文本字段中输入了43.34,我们会将其作为字符串获取。获得字符串值后,我必须确定它是浮点型还是整型。

if (value is float) 
{ 
    // do something 
} 
else if (value is int) 
{ 
    // do some thing 
} 
else 
{ 
    // this is a string value 
} 

在此先感谢。

+0

什么是您的问题或问题? – milesper

+0

@milesper:我想检查文本字段的输入值为float或int并调用相应的保存方法 – Warrior

回答

2

因为数字是浮点数也是整数。 所以你必须先检查一个数字是否是整数,然后是浮点数和最后一个字符串。

- (BOOL)checkIsInteger: (NSString *)integerString{ 
    NSScanner* scan = [NSScanner scannerWithString:integerString]; 
    int val; 
    return [scan scanInt:&val] && [scan isAtEnd]; 
} 

- (BOOL)checkIsFloat: (NSString *)floatString{ 
    NSScanner* scan = [NSScanner scannerWithString:floatString]; 
    float val; 
    return [scan scanFloat:&val] && [scan isAtEnd]; 
} 

- (void)yourFunction: (NSString *)string{ 
    if ([self checkIsInteger:string]) { 
     // This is integer 
    }else if([self checkIsFloat:string]){ 
     // This is float 
    }else 
     // This is string 
} 
相关问题