Foundation框架常用方法

NSArray方法

// 让数组中的每一个元素都调用`aMethod`方法
makeObjectsPerformSelector:@select(aMethod)
 
// 让数组中的每个元素都调用`aMethod`并把`withObject`后边的`oneObject`对象做为参数传给方法aMethod
makeObjectsPerformSelector:@select(aMethod)withObject:oneObject

NSString

字符串的遍历

   // 遍历字符串中的每一个字符
    for(int i =0; i < count; i++)
    {
        char c = [str characterAtIndex:i];
        NSLog(@"字符串第 %d 位为 %c",i,c);
    } 

字符串的比较

  // 字符串完全相等比较
    if([str0 isEqualToString:str1])
    {
        NSLog(@"字符串完全相等");
    }
    
    // 字符串以开头比较
    if([str0 hasPrefix:@"just"])
    {
        NSLog(@"字符串str0以just开头");
    }
    
    // 字符串以结尾比较
    if([str1 hasSuffix:@"coding"])
    {
        NSLog(@"str1字符串以coding结尾");
    }
    
    // NSOrderedSame 判断两者内容是否相同
    BOOL result = [astring01 compare:astring02] == NSOrderedSame;

    // 判断两对象值的大小(按字母顺序进行比较,astring02大于astring01为真)
    BOOL result = [astring01 compare:astring02] == NSOrderedAscending;

    // 判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)
    BOOL result = [astring01 compare:astring02] == NSOrderedDescending;  

    // 不考虑大小写比较字符串
    // NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为
    // 真)
    BOOL result = [astring01 caseInsensitiveCompare:astring02] == NSOrderedSame;

    // NSCaseInsensitiveSearch:不区分大小写比较
    // NSLiteralSearch:进行完全比较,区分大小写
    // NSNumericSearch:比较字符串的字符个数,而不是字符值。
    BOOL result = [astring01 compare:astring02 options:NSCaseInsensitiveSearch | NSNumericSearch] == NSOrderedSame;

字符串的截取和大小写

  // 截取字符串起始点到index为4之间的内容
  NSString *to = [str0 substringToIndex:4];

  // 截取字符index为2 到结尾之间的内容
  NSString *from = [str0 substringFromIndex:2];

  // 设置截取字符串的范围
  // 从第二位开始,长度为十
  NSString *strRang = [str0 substringWithRange:NSMakeRange(2, 10)];

  // 设置字符串首字母大写
  NSLog(@"str0首字母大写:%@", [str0 capitalizedString]);
  // 设置字符串全部内容为大写
  NSLog(@"str0大写:%@", [str0 uppercaseString]);
  // 设置字符全部内容为小写
  NSLog(@"str0小写:%@", [str0 lowercaseString]);

搜索字符串与替换字符串

  // 将搜索中的字符串替换成为一个新的字符串
    NSString *str = [str0 stringByReplacingCharactersInRange:rang withString:@"哇咔咔卡卡咔"];
    
  // 将字符串中" " 全部替换成 *
    str = [str0 stringByReplacingOccurrencesOfString :@" " withString:@"@"];
    
  // 使用下面这个方法整体替换字符串还可以设置替换的区域。
stringByReplacingOccurrencesOfString:(NSString *)withString:(NSString *) options:(NSStringCompareOptions) range:(NSRange)

方法列表

方法名 作用
+ (id)stringWithContentsOfFile:path encoding:enc err 创建一个新字符串并将其设置为 path 指定文件的内容,使用字符编码enc,在err 上返回错误
+ (id)stringWithContentsOfURL:url encoding:enc err 创建一个新字符串并将其设置为 url 所指向的内容,使用字符编码 enc,在err 上返回错误
- (id)initWithContentsOfFile:path encoding:enc error:err 将字符串设置为 path 指定文件的内容,使用字符编码 enc,在err 上返回错误
- (id)initWithContentsOfURL:url encoding:enc error:err 将字符串设置为 url 所指向的内容,使用字符编码 enc,在err 上返回错误
- (unichar)characterAtindex:i 返回索引i 所在UniCode 字符
- (NSString**)substringFromIndex:i 返回从索引 i *开始到结尾的子字符串
- (NSString*)substringWithRange:range 根据指定范围返回子字符串
- (NSString**)substringToIndex:i 返回从字符串开始到 索引 i *的子字符串
- (NSComparator*)caseInsensitiveCompare:nsstring 比较两个字符串大小,忽略大小写
- (NSComparator**)compare:nsstring *比较两个字符串大小
*- (BOOL)hasPrefix:nsstring 测试字符串是否以 nsstring *开始
*- (BOOL)hasSuffix:nsstring 测试字符串是否以 nsstring *结尾
*- (BOOL)isEqualToString:nsstring *测试两个字符串是否相等
- (NSString*)capitalizedString 返回字符串,串中的每个单词的首字母大写,其余字母小写
- (NSString**)lowercaseString *返回转换为小写的字符串
- (NSString*)uppercaseString 返回转换为大写的字符串
- (const char*)UTF8String 返回UTF8编码格式的字符串
NSMutableString 可修改字符串常用方法
+ (id)stringWithCapacity:size 创建一个字符串,容量为size大小
- (id)initWithCapacity:size 初始化一个字符串,容量为size
- (void)setString:nsstring 将字符串设置为 nsstring
- (void)deleteCharatersInRange:range 删除指定range 中的字符
- (void)insertString:nsstring atIndex:i 以索引 i 为起始位置插入 nsstring
- (void)replaceCharatersInRange;range withString:nsstring 使用 nsstring 替换 range 指定的字符
- (void)replaceOccurrencesOfString:nsstring withString:nsstring2 options:opts range:range 根据选项 opts ,使用指定 range 中的nsstring2 替换所有的 nsstring
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容