• ObjectiveC分类


    通过分类的方式可以为已存在的类添加新的方法,甚至不需要源码,有点像C#中的扩展方法。

    这时提供一个例子是把一个字符串转换为驼峰式并且出掉单词空格。

    NSString+CamelCase.h

    #import <Foundation/Foundation.h>
    
    //NSString 表示将要添加分类的类名称,该类必须是已存在的。
    //CamelCase 是为类添加的分类的名称。
    //只能添加方法,不能添加变量。
    //头文件命名惯例:ClassName+CategoryName.h
    @interface NSString (CamelCase)
    
    -(NSString*) camelCaseString;
    
    @end
    

    NSString+CamelCase.m

    #import "NSString+CamelCase.h"
    
    @implementation NSString (CamelCase)
    
    -(NSString*) camelCaseString
    {
        //调用NSString的内部方法获取驼峰字符串。
        //self指向被添加分类的类。
        NSString *castr = [self capitalizedString];
        
        //创建数组来过滤掉空格, 通过分隔符对字符进行组合。
        NSArray *array = [castr componentsSeparatedByCharactersInSet:
                          [NSCharacterSet whitespaceCharacterSet]];
        
        //把数组的字符输出
        NSString *output = @"";
        for(NSString *word in array)
        {
            output = [output stringByAppendingString:word];
        }
        
        return output;
        
    }
    
    @end
    

    main.m

    #import <Foundation/Foundation.h>
    #import "NSString+CamelCase.h"
    
    int main (int argc, const char * argv[])
    {
    
        NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    
        NSString *str = @"My name is bill.";
        NSLog(@"%@", str);
        str = [str camelCaseString];
        NSLog(@"%@", str);
    
        [pool drain];
        return 0;
    }
    

  • 相关阅读:
    第12-13周总结
    排球比赛计分规则
    我与计算机
    排球比赛计分规则-三层架构
    怎样成为一个高手 观后感
    最后一周冲刺
    本周psp(观众页面)
    本周psp(观众页面)
    本周工作计量
    本周总结
  • 原文地址:https://www.cnblogs.com/chenjunbiao/p/2044073.html
Copyright © 2020-2023  润新知