Foundation框架之NSMutableString、NSMutableArray和NSDictionary

一、NSMutableString

NSMutableStringNSString的子类,相当于是一个字符串链表可以动态的在字符串中添加字符串、删除字符串、插入字符串等,能够较为灵活的操纵字符串。另外,NSString中的方法NSMutableString都可以使用。

1. NSMutableString NSString 的区别:

1)NSString是不可变字符串(即占用的存储空间固定,里面的内容不能进行修改),里面的内容不可进行修改

2)NSMutableString是可变的(占用的存储空间不固定,可以动态变化,里面的内容可以修改),里面的内容可以根据需要随时进行修改

2.常用用法:

NSMutableString的创建、字符串拼接

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    //定义一个NSMutableString
    NSMutableString *s1 = [NSMutableString string];
    //从字符串末添加一个字符串
    [s1 appendString:@"这是一个可变字符串!"];
    NSUInteger a = s1.length;
    //凭借一段格式化字符串到字符串末
    [s1 appendFormat:@"有%ld个字符。", a];
    NSLog(@"%@",s1);
    return 0;
}
删除字符串中的指定字符串、或指定位置的字符串、在指定位置插入字符串、替换字符串中的某段字符串

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    //定义一个NSMutableString
    NSMutableString *s1 = [NSMutableString string];
    //从字符串末添加一个字符串
    [s1 appendString:@"这是一个可变字符串!"];
    //删除可变字符串中“字符串!”这个子字符串,通常搭配rangeOfString使用
    NSRange range = [s1 rangeOfString:@"字符串!"];
    [s1 deleteCharactersInRange:range];
    //在指定位置插入字符串
    [s1 insertString:@"字符串!" atIndex:6];
    //替换字符串中的指定字符串
    [s1 replaceCharactersInRange:NSMakeRange(0, 2) withString:@"这就是"];
    NSLog(@"%@",s1);
    return 0;
}
二、NSMutableArray

主要用法

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    //创建NSMutableArray
    NSMutableArray *array = [NSMutableArray array];
    NSMutableArray *array1 = [NSMutableArray arrayWithObjects:@"jim", @"rose", nil];
    //向NSMutableArray中添加元素
    [array addObject:@"jack"];
    //删除指定位置的元素
    [array1 removeObjectsAtIndexes:[NSIndexSet indexSetWithIndex:1]];
    NSLog(@"%@",array1);
    return 0;
}
三、NSDictionary

主要用法

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    //创建一个NSDictionary对象
    NSDictionary *dic = [NSDictionary dictionaryWithObject:@"jack" forKey:@"name"];
    NSArray *keys = @[@"name",@"age"];
    NSArray *objs = @[@"jack",@"20"];
    NSDictionary *dic1 = [NSDictionary dictionaryWithObjects:objs forKeys:keys];
    //编译器特性,快速创建NSDictionary
    NSDictionary *dic2 = @{@"name" : @"jack", @"age" : @"20"};
    //取出key对应的value
    id obj = [dic objectForKey:@"name"];
    id obj1 = dic1[@"age"];
    //取出dictionary中键值对的对数
    NSInteger a = dic2.count;
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值