
实际上是框架里面的一个类
NSString类型的指针变量 存储OC字符串的地址 不能存储c语言的
%@打印的是指针变量指向的对象
%p打印的是指针的值
%c是读取一个字节的数据
%C是读取两个字节的数据 unichar
NSString *b = [NSString new];//证明NSString是一个类
NSString *c = [NSString string];//这种就是类方法创建
//上面这两种方法创建的是空串@""
NSString *a = @"hello";//有@表示是OC的字符串 @"hello"这种本质是一个NSString对象
NSLog(@"%@",a);//hello 这样写不行NSLog(@"%s",*a);
NSLog(@"%p",a);//一串地址 a实际上存储的是@"hello"对象的地址
instancetype
instancetype作为返回值时表示返回的是当前这个类的对象
stringWithUTF-8String C字符串转化为OC字符串+(instancetype)stringWithUTF-8String:(const char*)nullTerminatedCString;
将C语言字符串转化为OC字符串对象
char *str0 = "rose" ;
NSString *str1=[NSString stringwithUTF8String:str0];
stringwithFormat 拼接字符串
+(instancetype) stringwithFormat :(NSString *)format
拼接一个字符串 使用变量或者其他数据拼接成OC字符串
NSString *str = [NSString stringwithFormat:@"大家好,我叫%@,我今年%d岁" , name ,age];
[str length]测量支持长度
`NSUInteger len = [str length]`;//NSUInteger 其实就是unsigned long
[str characterAtIndex:2]获取字符串的第几个字符
unichar ch = [str characterAtIndex:2]
[str1 isEqualToString:str2]判断两个字符是否一样
直接用==容易出问题
[str1 compare:str2]比较两个字符大小NSComparisonResult res = [str1 compare:str2];//NSComparisonResult 枚举类型 1(小于) 0(相等) -1(大于)也可以用int接
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)