本帖最后由 程浩 于 2014-4-3 17:00 编辑
这是我学习时候写的博客片段,地址:http://blog.csdn.net/kldxcr/article/details/22813973
=======实例2:为系统自带的类添加方法
//1.给NSString增加一个类方法:计算某个字符串中阿拉伯数字的个数
//2.给NSString增加一个对象方法:计算当前字符串中阿拉伯数字的个数
- //声明
- NSString+Number.h中
- #import <Foundation/Foundation.h>
- @interface NSString (Number)
- + (int)numberCountOfString:(NSString *)str;
- - (int) numberCount;//自己调用
- @end
- //实现
- @implementation NSString (Number)
- + (int)numberCountOfString:(NSString *)str
- {
- int count=0;
- for(int i=0;i<str.length;i++)
- {
- unichar c=[str characterAtIndex: i];//获取str字符串内部具体某一个字符,NSUIteger就是unsigned long,即数字
- if(c>='0' && c<='9')//if(c>=48 && c<=57)
- {
- count++;
- }
- }
- return count;
- //========以下代码可以完全代替以上代码========
- return [str numberCount];
- }
- - (int) numberCount
- {
- int count=0;
- for(int i=0;i<self.length;i++)
- {
- unichar c = [self characterAtIndex:i];//去除i这个位置对应的字符
- if(c<='9' && c>='0')
- {
- count++;
- }
- }
- return count;
- }
- @end
- //调用
- #import <Foundation/Foundation.h>
- #import "NSString+Number.h"
- init main()
- {
- int count1=[NSString numberCountOfString:@"a2134asd"];//类方法可以直接通过NSString 调用类方法
- int count2=[@"123sadf213" numberCount];
- NSlog(@"%d,%d",count1,count2);
- return 0;
- }
复制代码
|