1. appendString:在字符串后面添加字符串,变成了一个新的字符串。 2.insertString:@"www" atIndex:4:在某个位置上插入字符串。...字符串之后学习的是数组——NSArray 数组的学习思路和字符串是相似的,先要创建,创建之后就是函数的使用。数组的元素可以是任何对象,但数组中装有的元素不是对象而是地址。...OC中的字典——NSDictionary作用也差不多,字典中的元素是以键值对的形势存在的,键值对就像字典中的生词和页数的关系,有着一定的对应关系。OC中的字典存储对象的地址是没有顺序的。...字典中同样有可变字典——NSMutableDictionary。 在字典中的很多题听不错,下面就把一个手机通讯录的题贴在下面,看懂了这道题,很多东西也就会了。...[person setPhoneNum:phoneNum]; // person中的set方法 } // 查找联系人 -(void) searchPersonWithName:(NSString *)
CocoaTouch 中的 NSString initWithFormat 还是 stringWithFormat ?...initWithFormat 是实例方法,用法如下: NSString* str = [[NSString alloc] initWithFormat:@"%@", @"Hello, world!"]...stringWithFormat 是类方法, 用法如下: NSString* str = [NSString stringWithFormat:"%@", @"Hello, world!"]...NSString 到 NSInteger、 int NSString* str = @"123"; NSInteger intVal = [str integerValue]; int val = [str...intValue]; NSString 到 NSNumber NSString* str = @"123"; NSNumberFormatter* f = [[NSNumberFormatter alloc
;//A //获取对象C在数组的位置 NSLog(@"%lu",(unsigned long)[array indexOfObject:@"C"]);// 2 //获取数组中索引为...中的所有对象执行方法 @interface Student : NSObject - (void)log; - (void)logInfo:(NSString *)str; @end @implementation...排序 NSArray *arr = @[@"90",@"20",@"30",@"10",@"50",]; //数组中的元素不可以是自定义的 NSArray *arr1 = [arr...和NSString转换 NSArray *arr = @[@"A",@"B",@"C",@"D"]; NSString *str = [arr componentsJoinedByString...:@"-"]; NSLog(@"%@",str);//A-B-C-D NSString *str1 = @"A-B-C-D"; NSArray *arr1 = [str1 componentsSeparatedByString
字符串的创建 NSString *str1 = @"ss";//存储在常量区 NSString *str2 = [NSString stringWithFormat:@"%@",@"ss..."];//存储在堆区 NSString *str3 = [[NSString alloc]initWithFormat:@"%@",@"ss"];//存储在堆区 NSString *str4...//删除路径中的最后一个目录(本质就是删除最后一个斜线的目录,包括斜线) NSString *deletStr = [pathStr stringByDeletingLastPathComponent...(本质就是在字符串的末尾加上一个点和指定的内容) NSString *addExtensionStr = [pathStr stringByAppendingPathExtension:@"jpg..."]; NSLog(@"%@",addExtensionStr);///user/app/Desktop/info.txt.jpg 字符串转换 NSString *str = @"aBcD
NSData-> NSString NSString *aString = [[NSString alloc] initWithData:adataencoding:NSUTF8StringEncoding...{ int int_ch; /// 两位16进制数转化后的10进制数 unichar hex_char1 = [hexString characterAtIndex:i]; ////两位16进制数中的第一位...hex_char1-87)*16; //// a 的Ascll - 97 i++; unichar hex_char2 = [hexString characterAtIndex:i]; ///两位16进制数中的第二位...NSData 与 UIImage NSData->UIImage UIImage *aimage = [UIImage imageWithData: imageData]; //例:从本地文件沙盒中取图片并转换为...NSData NSString *path = [[NSBundle mainBundle] bundlePath]; NSString *name = [NSString stringWithFormat
Objective-C中NSArray类的解读 NSArray数组类是Objective-C语言中常用的也是重要的一个类,除了开发中常用到的一些基础功能,NSArray及其相关类中还封装了许多更加强大的功能...将数组中的元素以separator为分隔符进行组合 /* NSArray * array = @[@1,@2,@3,@4]; 将打印1,2,3,4 NSString * res = [array componentsJoinedByString...:@","]; */ - (NSString *)componentsJoinedByString:(NSString *)separator; //判断数组中是否包含某个元素 - (BOOL)containsObject...opts usingBlock:(void (^)(ObjectType obj, NSUInteger idx, BOOL *stop))block NS_AVAILABLE(10_6, 4_0); //在一个下标集合中枚举...passingTest:(BOOL (^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate NS_AVAILABLE(10_6, 4_0); //同上 在一定下标集合中遍历
str; 在主串中搜索子串.从前往后搜索....这些对象在NSArray数组中有序存放一个挨着一个。...另外NSArray也提供了在block中遍历数组元素的方法 [arr enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL...是NSArray的子类,所以NSMutableArray也可以用来存储数据,唯一不同的是NSMutableArray是可变数组,存储在该数组中的元素可以删除,也可以动态增加元素,其他用法均与NSArray...NSArray的数据持久化 有时我们需要将数组的信息(数组的元素的值)保存在沙盒中,进行数据持久化,当使用到的时候在重沙盒中读取 可以使用plist文件保存数组,即将数组的信息存储到plist文件中,
NSString *str1 = @"can you \n speak English"; NSString *str = @"\n"; //在str1这个字符串中搜索\n,推断有没有
但是,一些简单的数据,我们也可以尝试自己来实现转换的过程。 更重要的是,有时候在iOS面试的时候,部分面试官会不仅问你某种场景会用到什么框架,更会问你如果要你来实现这个功能,你有没有解决思路?...有了这个基础,在利用运行时runtime的动态特性,你也可以实现这些第三方框架。...笔者的KVC系列为: iOS开发·KVC:字典转模型,防止因本地未定义字段(后台的字段与本地字符串名不一致)导致数据转换过程中的奔溃 iOS开发·runtime+KVC实现字典模型转换 1....:NSArray中也是字典,把数组中的字典转换成模型. // 判断值是否是数组 if ([value isKindOfClass:[NSArray class]]) {...:NSArray中也是字典,把数组中的字典转换成模型. // 判断值是否是数组 if ([obj isKindOfClass:[NSArray class
前言 在iOS开发过程中,有些时候会用到去重处理,也就是去掉重复的元素或者个数,然后再进行排序处理,这就使用到了集合(NSSet),它其实是一种哈希表,通过运用散列算法来查找集合中的元素。...集合和数组的相同点:都是存储不同元素的地址,不同点:NSSet中的元素都是被自动过滤之后的不会重复的元素,NSArray中的元素却是允许重复的;NSSet是一个无顺序的集合,NSArray是一个有顺序的集合...一、基本常用的方法 (一)NSSet 1、集合初始化: NSSet在初始化的时候,赋值的时候如果放入两个相同元素的话,会自动删除其中一个相同的元素。...*str; while (str = [enumerator nextObject]) { …… } 7、根据数组来初始化集合,也就是数组转换为集合 NSArray *array1 = [[NSArray...*)temp time:(NSString *)time { NSArray *arr = [[NSUserDefaults standardUserDefaults] valueForKey
接着上篇文章中的API分module的处理,我们今天来说说返回数据参数的处理吧。...=OK 我们取出message提示 后:好的,那data就给你们默认list或者map吧 哈哈,有了上文我们来做吧 1 收到数据YYModel转换为Bean 2 判断OK,拿着data转换为Bean...哈哈,我们怎么解析啊,还有我们搞,重点来了 1 怎么让dataFor知道按照ArrayList中为map的处理 2 怎么处理ArrayList中全是String?...:(NSArray *)items{ if (items.count>0) { if( [items.firstObjectisKindOfClass:NSString.class]){ return...:NSString.class]) { modelValue = [NSArray modelArrayWithClass:modelClass onlyStrArray:self.data
ios开发-数据类型转换 1,NSData 与 NSString NSData --> NSString NSString*aString = [[NSString alloc] initWithData...{ int int_ch; /// 两位16进制数转化后的10进制数 unichar hex_char1 = [hexString characterAtIndex:i]; ////两位16进制数中的第一位...hex_char1-87)*16; //// a 的Ascll - 97 i++; unichar hex_char2 = [hexString characterAtIndex:i]; ///两位16进制数中的第二位...转换 NSArray *arr1= [[NSArray alloc]initWithObjects:@"0",@"5",nil]; NSData *data= [NSKeyedArchiver... archivedDataWithRootObject:arr1]; NSArray *arr2= [NSKeyedUnarchiver unarchiveObjectWithData:data
- (NSDictionaryNSString *,id> *)dictionaryWithValuesForKeys:(NSArrayNSString *> *)keys; 将指定字典中的值设置到消息接收者的属性中...,放在一个NSArray实例中并返回。...非对象值处理 KVC支持基础数据类型和结构体,在使用KVC进行赋值或取值的时候,会自动在非对象值和对象值之间进行转换。...我们可以在消息接收者类中实现validate:error:的方法来自定义逻辑返回YES或NO。...如果取到的值是一个NSNumber支持的数据类型,则将其存储在NSNumber实例并返回。 如果取到的值不是一个NSNumber支持的数据类型,则转换为NSValue对象, 然后返回。
Foundation框架提供了非常多好用的类, 比如: NSString : 字符串 NSArray : 数组 NSDictionary : 字典 NSDate : 日期 NSData : 数据 NSNumber...在ARC无效时,Core Foundation 框架中的retain/release 分别是 CFRetain /CFRelease。...所谓的Toll-free bridging是说您可以在某个框架的方法或函数同时使用 Core Foundation 和 Foundation 框架中的某些类型。...Objective-C指针与CoreFoundation指针之间的转换 2.1 MRC下的转换 CF-->OC 强制转换符:(CFStringRef) OC-->CF 强制转换符:(NSString...在ARC中,CF和OC之间的转化桥梁是 __bridge,有3种方式: __bridge 只做类型转换,不改变对象所有权,是我们最常用的转换符。
NSArray是不可变的,NSMutableArray是可变的。二者在类型上是不同的。如果需要操作数组还是用NSMutableString,这个版本的array。...1、NSString和NSData之间的转换 NSString *string = @“哎我去上市了!"...转换成字符串 NSString * inString = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];...3、NSNumber、NSArray、NSDictionary和NSData之间的转换 数组转NSData是建立在归档的基础上,归档也称为序列化,OC中NSString 对象、NSNumber...[NSKeyedArchiver archiveRootObject:dict toFile:docPath]; 2>.把字典或数组先转换成NSData,再保存到某一个文件中
但是,一些简单的数据,我们也可以尝试自己来实现转换的过程。 更重要的是,有时候在iOS面试的时候,部分面试官会不仅问你某种场景会用到什么框架,更会问你如果要你来实现这个功能,你有没有解决思路?...有了这个基础,在利用运行时runtime的动态特性,你也可以实现这些第三方框架。...笔者的KVC系列为: iOS开发·KVC:字典转模型,防止因本地未定义字段(后台的字段与本地字符串名不一致)导致数据转换过程中的奔溃 iOS开发·runtime+KVC实现字典模型转换 1....)setValue:(id)value forUndefinedKey:(NSString *)key的方法体中重写该方法,以针对id字段作特殊处理。...(例如:id ,description等可以进行转换) -(void)setValue:(id)value forUndefinedKey:(NSString *)key { if ([key
plist文件中存放着与视图控制器同名的字符串 WechatIMG33.png 获取工程文件: NSString * path = [[NSBundle mainBundle] pathForResource...:@"ViewControllers" ofType:@"plist"]; NSLog(@"path:%@",path); NSArray * array = [NSArray arrayWithContentsOfFile...:path]; 从数组中取出: NSDictionary * dict = [array objectAtIndex:indexPath.row]; NSString * str = [dict objectForKey...UIViewController* vc = [[NSClassFromString(str)alloc]init]; vc.title = [dict objectForKey:@"title"]; 转换方法...:NSString类型转换Class类型 NSClassFromString(NSString *aClassName); NSStringFromClass(Class aClass); //协议
iOS:JSON转OC属性小工具 在iOS开发中,只要有网络模块,就需要数据模型的编写。...本脚本采用的语言为JavaScript,采用JavaScript编写有两个好处,首先其可以在node环境运行,可以十分方便的操作文件,使用它可以直接将JSON文件转换成OC数据模型类。...其次,它也十分容易在Web端运行,可以通过网页可视化的进行数据模型的转换。 ...,strong)NSArray*audios; @property(nonatomic,strong)NSString*avatar_url; @property...热爱技术,热爱生活中有趣的事务,互相交流,也在朋友 QQ:316045346 ——珲少
然后转换的时候直接从 hash 中取值,将查找效率最大化提高。...实际上这也是 hash 思想,当传入有效时间格式的 NSString 对象时,通过其长度就能直接取到 blocks 数组中的闭包对象,调用闭包传入该字符串就能直接得到转换后的 NSDate 对象。...,尽管这句代码中@property (nonatomic, copy) NSArray sub;,NSArray的中是协议ModelA,而不是指针类型ModelA 。...当业务代码中有同名的 协议 和 模型,在写容器的元素类型时(NSArray),开发者有可能会写错,而 YYModel 强行纠正了你的错误代码。 嗯。。...当然,你可以指定模型容器属性的元素,如:@property NSArray *arr;,若你未在上述协议中返回该属性的映射关系,那么在将该属性转换成中间类 _YYModelPropertyMeta
1 Base64 1.1 在iOS7中系统提供了base64的转码方式 示例如下: NSData* originData = [originStr dataUsingEncoding: NSASCIIStringEncoding...2.1.1 NSDictionary转换为NSString - (NSString*) DataTOjsonString: (id)object { NSString*jsonString =...initWithData: jsonData encoding: NSUTF8StringEncoding]; } return jsonString; } 注意: 此时转换成的字符串中...转换成UTF8编码的NSString http://blog.csdn.net/a6472953/article/details/8163016 NSJSONSerialization-JSON数据与NSDictionary...和NSArray之间的转化 http://blog.csdn.net/xyxjn/article/details/17224733
领取专属 10元无门槛券
手把手带您无忧上云