黑马程序员-Foundation框架之NSString
2015-07-19 19:18
666 查看
——Java培训、Android培训、iOS培训、.Net培训、期待与您交流!
——
NSString对象是非常重要的一个对象,也是最基础的一个对象,是用来处理字符串的常用类
1.使用方法:
2.创建方法
[objc] view
plainc
//1.--------------字符串的创建方式
NSString *string1 = @"hello";
NSLog(@"%@",string1);
//和上面的方式是等价的
string1 = [[NSString alloc] initWithString:@"hello1"];
NSLog(@"%@",string1);
//占位符,可以实现拼接字符串
//[string1 stringByAppendingFormat:<#(NSString *), ...#>]这个方法也是可以实现字符串拼接的
string1 = [[NSString alloc] initWithFormat:@"hello %@",string1];
NSLog(@"%@",string1);
//使用类方法创建字符串
string1 = [NSString stringWithString:@"hello1"];
这里用了四种方式去创建一个字符串
常用的方式一般是第一种
第二种是对象方法创建的
第三种是在创建字符串的时候可以实现字符串的拼接
第四种是使用类的方法创建的
——
NSString对象是非常重要的一个对象,也是最基础的一个对象,是用来处理字符串的常用类
1.使用方法:
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //NSString是不可变字符串,后面还会降到可变字符串 //1.--------------字符串的创建方式 NSString *string1 = @"hello"; NSLog(@"%@",string1); //和上面的方式是等价的 string1 = [[NSString alloc] initWithString:@"hello1"]; NSLog(@"%@",string1); //占位符,可以实现拼接字符串 //[string1 stringByAppendingFormat:<#(NSString *), ...#>]这个方法也是可以实现字符串拼接的 string1 = [[NSString alloc] initWithFormat:@"hello %@",string1]; NSLog(@"%@",string1); //使用类方法创建字符串 string1 = [NSString stringWithString:@"hello1"]; //2.--------------字符串的比较isEqualToString //比较字符串的值 NSString *string2 = @"abcd"; NSString *string3 = @"8888"; BOOL isEquals = [string2 isEqualToString:string3]; if(isEquals){ }else{ } NSString *string8 = @"abc"; NSString *string9 = @"abc"; //这里内存做了优化,这里string8和string9是相同的,"abc"在常量区中分配的 //string8和string9是局部变量,在栈中分配内存的 if(string8 == string9){ NSLog(@"string8 == string9"); }else{ NSLog(@"string8 != string9"); } //下面的string11和string12还是在栈中分配内存的 NSString *string11 = [[NSString alloc] initWithString:@"abc"]; NSString *string12 = [[NSString alloc] initWithString:@"abc"]; if(string11 == string12){ NSLog(@"string11 == string12"); }else{ NSLog(@"string11 != string12"); } //下面的string13和string14是在堆中分配内存的,所以string13和string14不相等了 NSString *string13 = [[NSString alloc] initWithFormat:@"abc%@",@"def"]; NSString *string14 = [[NSString alloc] initWithFormat:@"abc%@",@"def"]; if(string13 == string14){ NSLog(@"string13 == string14"); }else{ NSLog(@"string13 != string14"); } //3.---------------------caseInsensitiveCompare方法 //区分大小写判断是否相等 NSString *string15 = @"zhangsan"; NSString *string16 = @"ZAHNGSAN"; NSComparisonResult result = [string15 caseInsensitiveCompare:string16]; if(result == NSOrderedSame){ }else{ } //4.---------------------compare方法 //比较两个字符串的大小 result = [string15 compare:string16]; if(result == NSOrderedAscending){ //升序 }else if(result == NSOrderedDescending){ //降序 } //5.---------------------length方法 NSString *string17 = @"abc"; NSInteger len = [string17 length]; NSLog(@"len=%ld",len); //6.---------------------uppercaseString/lowercaseString //转成大写 NSString *string18 = @"aEc"; NSString *string19 = [string18 uppercaseString]; string19 = [string18 lowercaseString]; //首字符大写,其他的变成小写 [string18 capitalizedString]; //7.---------------------TypeXXXValue //数值转化方法 NSString *string20 = @"3.14"; float value = [string20 floatValue]; string20 = @"1"; BOOL values = [string20 boolValue]; //8.---------------------subStringToIndex/subStringFromIndex/subStringWithRange //字符串的截取 NSString *string21 = @"abcdefg"; //从开始位置截取到下标为3的字串(不包括3) NSString *stringnews = [string21 substringToIndex:3]; //从哪个index开始截取到尾部(包括3) stringnews = [string21 substringFromIndex:3]; //截取1~(3+1)部分的字串 NSRange range = {1,3}; stringnews = [string21 substringWithRange:range]; //9.----------------------stringByAppendingString/stringByAppendingFormat //字符串的追加 NSString *string22 = @"Android"; NSString *stringnew = [string22 stringByAppendingString:@"IOS"]; stringnew = [string22 stringByAppendingFormat:@"%@",@"IOS"]; //10.---------------------rangeOfString //字符串的查找 NSString *string23 = @"www.iphonetrain.com/ios.html"; NSRange rang = [string23 rangeOfString:@"ios"];//返回一个范围 if(rang.location == NSNotFound){ //没找到 }else{ //找到了 } //11.----------------------characterAtIndex //取出字符串中指定的char NSString *string24 = @"abcdef"; unichar c = [string24 characterAtIndex:3]; } return 0; }
2.创建方法
[objc] view
plainc
//1.--------------字符串的创建方式
NSString *string1 = @"hello";
NSLog(@"%@",string1);
//和上面的方式是等价的
string1 = [[NSString alloc] initWithString:@"hello1"];
NSLog(@"%@",string1);
//占位符,可以实现拼接字符串
//[string1 stringByAppendingFormat:<#(NSString *), ...#>]这个方法也是可以实现字符串拼接的
string1 = [[NSString alloc] initWithFormat:@"hello %@",string1];
NSLog(@"%@",string1);
//使用类方法创建字符串
string1 = [NSString stringWithString:@"hello1"];
这里用了四种方式去创建一个字符串
常用的方式一般是第一种
第二种是对象方法创建的
第三种是在创建字符串的时候可以实现字符串的拼接
第四种是使用类的方法创建的
相关文章推荐
- 黑马程序员—IOS基础之OC—static、self、NSString和NSLog讲解
- 黑马程序员_笔记总结(给自己看的向)
- 程序员养生之道
- 黑马程序员——Java基础---Java语言中的关键字
- 黑马程序员—— 5,继承,子父类,抽象类,接口,final,模板设计
- 黑马程序员 About Me
- 黑马程序员——Java反射&动态代理
- 黑马程序员——java基础——单利设计模式
- 黑马程序员——Java基础——前期了解
- C#面试题整理2
- 游戏程序员养成计划
- 2015实习生面试记录
- <转>2015-7-14面试题
- 黑马程序员—JAVA基础—多线程
- 黑马程序员——JAVA基础----------集合框架(一)----list接口
- 黑马程序员——Java基础---数据类型、编码解码
- 漫谈好程序员的标准
- java面试题
- 程序员面试资源集锦
- 程序员面试资源集锦