Foundation框架之NSMutableString、NSMutableArray和NSDictionary

原创 2015年11月20日 18:15:52

一、NSMutableString

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

1.NSMutableStringNSString的区别:

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;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

关于NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary

NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary 在 OC 中我们天天都要用,而我们要怎...
  • zuoyou1314
  • zuoyou1314
  • 2014年07月01日 22:17
  • 1178

NSArray和NSMutableArray,NSDictionary和NSMutableDictionary的常用方法

转载自:http://1058813598.diandian.com/post/2011-12-24/10271590 http://blog.sina.com.cn/s/blog_7b9d64...
  • harryptter
  • harryptter
  • 2014年11月19日 15:01
  • 795

Foundation框架之NSDictionary

NSDictionary 字典,由键值对组成,通过一个key(键), 就能找到对应的value(值) 。 是不可变的, 一旦初始化完毕, 里面的内容就无法修改...
  • angle0018
  • angle0018
  • 2015年10月07日 13:28
  • 144

iOS学习爬坑记录2:往NSMutableArray添加NSDictionary元素失败

代码只是节选,在写一个记事本
  • MIRAGE086
  • MIRAGE086
  • 2014年11月12日 09:21
  • 1095

Foundation使用示例(NSString、NSMutableString 、NSArray、NSMutableArray 、NSDictionary 、NSMutableDictionary)

1. NSString字符串比较void test(){ NSString *str = @"ccd"; // 3 NSString *str2 = @"bcde";// 4 //...
  • changyou0730
  • changyou0730
  • 2015年12月18日 14:04
  • 306

Foundation框架---NSString 和 NSMutableString

objective-c Fundation框架之NSString 和 NSMutableStringobjective-c的字符串可以分为两种1.可变字符串:NSMutableString2.不可变字...
  • ikj1235
  • ikj1235
  • 2015年03月13日 11:13
  • 339

NSArray与NSMutableArray的区别 NSDictionary与 NSMutableDictionary 的区别

NSArray与NSMutableArray的区别 在iOS 开发过程中, NSArray,NSMutableArray、NSDictionary、 NSMutableDictionary 经常被用...
  • danjianhu678
  • danjianhu678
  • 2012年04月01日 15:54
  • 695

NSString为什么用copy而不是strong,NSMutableString为什么用strong而不是用copy(或者NSArray及NSMutableArray等)

以NSString以及NSMutableString为例 @property (strong,nonatomic) NSString *sStr; @property (copy, nonatomic...
  • GofeyLee
  • GofeyLee
  • 2017年04月14日 17:06
  • 279

Foundation框架学习之NSString和NSMutableString

由于Swift语言一直有在更新,且IOS开发中有很多库都是使用Objective-C语言的,所以Objective-C的学习还是很有必要的,下面是对NSString学习的一些记录。 // // m...
  • deng0zhaotai
  • deng0zhaotai
  • 2016年12月08日 14:29
  • 221

ios_Cocoa框架 “Foundation”和“UIKit”的区别

Cocoa Cocoa不是一种编程语言(它可以运行多种编程语言),它也不是一个开发工具(通过命令行我们仍然可以开发Cocoa程序),它是创建Mac OS X和IOS程序的原生面向对象API,为这...
  • hw_2396611405
  • hw_2396611405
  • 2015年12月05日 11:04
  • 4497
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Foundation框架之NSMutableString、NSMutableArray和NSDictionary
举报原因:
原因补充:

(最多只允许输入30个字)