oc60--Category 分类 练习

Posted 672530440

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oc60--Category 分类 练习相关的知识,希望对你有一定的参考价值。

//  main.m
//  Category练习

#import <Foundation/Foundation.h>
#import "NSString+NJ.h"    //看不到NSString的.h文件。

/*
int countWithStr(NSString *str)
{
    int count = 0;
    for (int i = 0; i < str.length; ++i) {
        unichar c = [str characterAtIndex:i];
        if (c >= ‘0‘ && c <= ‘9‘) {
            count++;
        }
    }
    return count;
}
 */

int main(int argc, const char * argv[]) {
    /*
     已知一个字符串, 要求找出字符串中所有的阿拉伯数字
     @"a123jj46kfd5jlwf7ld";
     
     1.计数器思想, 定义一个变量保存结果
     2.遍历字符串, 取出字符串中所有的字符
     */
    
    NSString *str = @"a1jj46kf1d5jlwf7l9d8";
    /*
//    unichar c = [str characterAtIndex:1];
//    NSLog(@"%c", c);
    int count = 0;
    for (int i = 0; i < str.length; ++i) {
        unichar c = [str characterAtIndex:i];
//        NSLog(@"%c", c);
        if (c >= ‘0‘ && c <= ‘9‘) {
            count++;
        }
    }
     */
    
    int count2 = countWithStr(str);
    int count1 = [NSString countWithStr:str];
    int count = [str count];
    NSLog(@"count = %i", count);
    return 0;
}
//  NSString+NJ.h

#import <Foundation/Foundation.h>

@interface NSString (NJ)

+ (int)countWithStr:(NSString *)str;

- (int)count;
@end
//  NSString+NJ.m

#import "NSString+NJ.h"

@implementation NSString (NJ)



-(int)countWithStr:(NSString *)str{
    int count=0;
    for (int i=0; i< str.length; i++) {
        unichar c=[str characterAtIndex:i];
        if (c>=0&& c<=9) {
            count++;
        }
    }


}



-(int)count{
    int number=0;
    for (int i= 0; i< self.length; ++i) {
        unichar c=[self characterAtIndex:i];
        if(c>=0&& c<=0);
        number ++;
            
    }


}
@end
//  Person.h

#import <Foundation/Foundation.h>

@interface Person : NSObject

- (void)test;
@end
//  Person.m

#import "Person.h"
#import "NSString+NJ.h"

@implementation Person


-(void)test{
   NSString *str=@"fds64jkl43fjdslkf";
    int count =[NSString countWithStr:str];
    NSLog(@" count= %i",count);
}



@end

 

以上是关于oc60--Category 分类 练习的主要内容,如果未能解决你的问题,请参考以下文章

OC -- 小练习

OC基础--分类(category) 和 协议(protocol)

OC-分类

[OC学习笔记]协议与分类

oc59--匿名分类

31-oc分类和类扩展