分类的使用 对NSString的扩展

来源:互联网 发布:30天不睡觉实验 知乎 编辑:程序博客网 时间:2024/06/06 14:13

分类本意就是对当前类进行方法的扩展

不可以对属性进行扩展  协议也是一样 只能扩展方法不能扩展属性

对NSString 进行简单的扩展实例说明分类


对类进行扩展操作过程




// .h 是对字符串方法的声明扩展

#import <Foundation/Foundation.h>@interface NSString (Number)// 计算字符串中阿拉伯数字的个数- (int) numberCount;@end


// .m 文件执行对字符串方法的实现扩展
#import "NSString+Number.h"@implementation NSString (Number)// @"abc123"- (int)numberCount{        //[self length];        int count = 0;        int len = (int) self.length;        for (int i = 0; i<len; i++) {        // 获取i位置对应的字符(char)       char c = [self characterAtIndex:i];               if (c>='0' && c<='9')       {           count++;       }    }


main函数 调用分类执行
//返回 长度  对NSString进行了扩展#import <Foundation/Foundation.h>#import "NSString+Number.h"int main(int argc, const char * argv[]){    @autoreleasepool {        NSString *str = @"abc 123fdsf090900sdfds68768867";                int count = [str numberCount];                NSLog(@"%d", count);    }    return 0;}        return count;}@end



原创粉丝点击