判断输入的是不是数字

时间:2023-01-30 13:54:29
//使用NSScanner类, [self
isPureInt:此处应该是键盘时刻输入的那个string,如下代理方法]  
//传入textFiledLabel获取的输入字符串并调用方法判断
  -
(
BOOL)isPureInt:(NSString*)string{
    NSScanner* scan = [NSScanner scannerWithString:string]; //定义一个NSScanner,扫描string     intval;     return[scan scanInt:&val] && [scan isAtEnd]; } //[scan
scanInt:&val]
//扫描的Int类型放入val //根据NSScanner的机制,如果扫描到结果需要的数据,那么它就会停在数据结尾的下一个字符处 //例如:string
= @"12ccf12";如果扫描Int类型,那么第一次扫描到第二个字符处就停止了,如果要扫描全部需要进行循环判断
//扫描结束后,没有到string的结尾,那么[scan
isAtEnd]为NO
//所以 //[scan
isAtEnd]
 //判断是否到结尾 //这样就能保证一遍扫描到结尾的数据全部是int,[scan
scanInt:&val] 和[scan isAtEnd]都为YES;
//结果isPureInt
返回YES;
//类似其他的判断也可以参考NSScanner 判断输入的是不是数字