iOS开发学习第十六课——如何使用苹果帮助文档、NSString

来源:互联网 发布:飞鸟淘宝客学习 编辑:程序博客网 时间:2024/06/03 16:07

        如何学好iOS开发?
         1.
要学会使用苹果官方文档
         2.
对于方法的学习记忆:多练多敲
         3.
多查资料
         4.
上课对于新方法的学习,一定要做详细注释
         5.***多调试Bug,提升自己独立解决问题的能力
        
#import<Foundation/Foundation.h>
intmain(intargc, const char * argv[]) {
   @autoreleasepool {
       //NSString 字符串类
       
//1.创建一个字符串对象
       
NSString*str1 = @"XiaoMing";
       
//2.创建字符串对象的第二种方法(初始化方法创建)
       
//(1).
        
NSString*str2 = [[NSStringalloc]initWithString:@"JiangTao"];
       
//(2).使用便利构造器创建对象
       
NSString*str2 = [[NSString stringWithString:@"峻峰"];
       
//3.Format格式
       
NSString*str4 = @"帅帅";
       
NSString*str5 = [NSStringstringWithFormat:@"我叫%@",str4];
       
NSLog(@"str5 = %@",str5);
       
//对于基本数据类型也可以使用到字符串当中
       
int a = 10;
       
NSString*str6 = [NSStringstringWithFormat:@"今年%d",a];
       
NSLog(@"str6 = %@",str6);
       
       
//如何将C语言当中字符串转化为OC对象
       
char symbol[10] = "Hello";//C言语当中的字符串
       
//C语言字符串转化OC字符串对象
       
NSString*str7 = [NSStringstringWithUTF8String:symbol];
       
NSLog(@"str7 = %@",str7);
       
       
       
//使用Format格式
       
char name[10] = {0};
       
printf("请输入同桌的姓名:");
       
scanf("%s",name);
       
//C语言里的字符串转化为OC中的字符串对象
       
NSString*nameStr = [NSStringstringWithUTF8String:name];
       
//使用formate格式 得到最终的字符串
       
NSString*classmateStr = [NSStringstringWithFormat:@"My classmate's name is %@",nameStr];
       
NSLog(@"%@",classmateStr);
       
       
       
//字符串长度
       
NSString*str8 = @"You Can You Up,No Can No BB";
       
       
//创建字符串对象
       
NSString*str8 = [NSString stringWithFormat:@"You Can You Up,No Can No BB!"];
       
//求字符串长度 不考虑'\0'
       
NSUIntegerlength = [str8 length];
       
NSLog(@"Length = %lu",length);
       
//汉字
       
NSString*ChineseStr = @"小龙吃包子";
       
NSUIntegerChineseLength = [ChineseStr length];
       
NSLog(@"%lu",ChineseLength);
       
       
//3.前缀和后缀 也就是字符串以什么开头,以什么结尾
       
//前缀和后缀是没有界限的
       
NSString*baiduStr = @"http://www.baidu.com";
       
//hasPrefix此方法用来判断字符串前缀,也就是说是否以某字符串开头,返回值类型是BOOL类型,如果为真,则说明字符串是以次前缀开头
       
BOOL isStart = [baiduStr hasPrefix:@"http"];
       
NSLog(@"isStart = %d",isStart);
       
BOOL isEnd = [baiduStr hasSuffix:@"com"];
       
NSLog(@"isEnd = %d",isEnd);

       
       
//创建一个新浪网址字符串
       
char Sina[50] = {0};
       
printf("请输入新浪网址:");
       
scanf("%s",Sina);
       
//C语言的字符串转化为OC中的对象
       
NSString*SinaStr = [NSStringstringWithUTF8String:Sina];
       
//判断前缀是否以http.开头
       
BOOL SinaStart = [SinaStr hasPrefix:@"www."];
       
//判断后缀是否以.com结尾
       
BOOL SinaEnd = [SinaStr hasSuffix:@".com"];
       
//如果同时满足前缀和后缀,则说明是有效网址
       
if (SinaStart && SinaEnd) {
           
NSLog(@"此网址是有效网址");
        }
else{//否则是无效网址
           
NSLog(@"此网址是无效网址");
        }
       
        
        
       
//4.搜索字符串范围
       
NSString*rangOfStr = @"ZhenZhe XiaoLong HaiFeng";
       
//rangeOfString用来求字符串中子字符串的范围
       
NSRangerange = [rangOfStr rangeOfString:@"XiaoLong"];
       
//NSRang是一个结构体,成员有location length ,所以rang.location是字符串范围的下标起始位置,而且,如果字符串有两个及两个以上的话,以遇到第一个为准
       
NSLog(@"location = %lu,length = %lu",(unsignedlong)range.location,(unsignedlong)range.length);
       
//因为子字符串当中可以得到长度,如果不存在此字符串,length == 0,所以,我们通过length的结果判断此时字符串中有没有我们需要的子字符串(字符串当中的内容)
       
if (range.length!= 0){
           
NSLog(@"查找成功,存在此字符串");
        }
else{
           
NSLog(@"查找不成功,不存在此字符串");
        }
       
       
       
       
//截取字符串
       
NSString*nameStr = @"XiaoMing XiaoXue XiaoHong";
       
//substringToIndex: 字符串截取,从字符串的开始就一直截取到下标-1减一的位置,包含这个字符
        [nameStr
substringToIndex:11];
       
NSString*receiveStr = [nameStr substringToIndex:11];
       
NSLog(@"receive = %@",receiveStr);
       
//根据字符串范围可以得到子字符串下标开始位置nameRange.location
       
NSRangenameRang =[nameStr rangeOfString:@"aoH"];
       
//给定一个位置,从此位置到最后一个字符串结束
       
NSString*XiaoHong = [nameStr substringFromIndex:nameRang.location];
       
NSLog(@"XiaoHong = %@",XiaoHong);
       
       
//截取字符串任意范围内的子字符串
       
//第一种方式
       
NSRangeXiaoXue = [nameStr rangeOfString:@"XiaoXue"];
       
NSString*XiaoXueStr = [nameStr substringWithRange:XiaoXue];
       
NSLog(@"%@",XiaoXueStr);
       
       
//第二种方式
       
NSString*str9 = [nameStr substringWithRange:NSMakeRange(9, 8)];
       
NSLog(@"%@",str9);
       
       
       
       
//6.拼接字符串
       
NSString*lodStr = [NSStringstringWithFormat:@"I Love You!"];
       
//为现有的字符串对象拼接字符串
       
NSString*newSrt = [lodStr stringByAppendingString:@"Me Too!"];
       
NSLog(@"%@",newSrt);
       
       
//拼接格式串
       
NSIntegertotalAge = 50;
       
NSString*totalStr = [newSrt stringByAppendingFormat:@"%ld",(long) totalAge];
       
NSLog(@"%@",totalStr);
       
       
//7.替换字符串
       
NSString*replaceStr = @"XiaoFeng XiaoAn";
       
//XiaoYu换成XiaoAn,整体替换,前面为被替换内容,后面是将要替换的内容,即用后面的替换前面的
       
NSString*newString = [replaceStr stringByReplacingOccurrencesOfString:@"XiaoAn"withString:@"XiaoYu"];
       
NSLog(@"%@",newString);
       
       
//在某个范围内整体替换
       
NSString*twoNewStr = [newString stringByReplacingCharactersInRange:NSMakeRange(4, 9)withString:@"Jin"];
       
NSLog(@"%@",twoNewStr);
       
       
//8.比较字符串
       
NSString*comStr1 = @"Hello!";
       
NSString*comSrt2 = @"Hi!";
       
NSComparisonResultresult = [comStr1 compare:comSrt2];
       
switch(result){
           
caseNSOrderedSame:
               
NSLog(@"两个字符串相等");
               
break;
           
caseNSOrderedAscending:
               
NSLog(@"前一个字符串比第二个字符串小");
               
break;
           
caseNSOrderedDescending:
               
NSLog(@"前一个字符串比第二个字符串大");
               
break;
           
default:
               
break;

        }
       
       
//9.字符串与数值类型转换
       
NSString*numberStr = @"123";//若想数值提取成功,则字符串对象里面必须只能出现数字
       
//转换为数值类型
       
int number = [numberStr intValue];
       
printf("number = %d\n",number);
       
//转换为float类型
       
NSString*floatStr = @"9.8";
       
float f = [floatStr floatValue];
       
printf("f = %.2f\n",f);
       
       
       
//10.大小写转换
       
NSString*wordStr = @"Tonight I Close To You";
       
//全部转换成大写
       
NSString*upperStr = [wordStr uppercaseString];
       
NSLog(@"%@",upperStr);
       
//全部转换成小写
       
NSString*lowStr = [upperStr lowercaseString];
       
NSLog(@"%@",lowStr);
       
//将单词的首字母大写
       
NSString*capitalStr = [lowStr capitalizedString];
       
NSLog(@"%@",capitalStr);
       
       
//可变字符串NSMutableString NSString 的子类
       
//在不可变NSString字符串的基础上,增加了自己独有的一些方法,比如:增删改查
       
//创建一个可变字符串对象
       
NSMutableString*mutStr = [[NSMutableStringalloc]initWithCapacity:1];
       
//使用变量构造器创建
       
NSMutableString*mutStr = [NSMutableStringstringWithCapacity:1];
       
//拼接字符串
        [mutStr
appendFormat:@"NSMutableString!"];
       
NSLog(@"%@",mutStr);
       
//插入字符串
        [mutStr
insertString:@"逗比"atIndex:2];
       
NSLog(@"%@",mutStr);
       
//删除指定范围的字符串
       
//第一种方法
       
NSRangerangDelete = [mutStr rangeOfString:@"逗比"];
        [mutStr
deleteCharactersInRange:rangDelete];
       
NSLog(@"%@",mutStr);
       
//第二种方法
        [mutStr
deleteCharactersInRange:NSMakeRange(3, 3)];
       
NSLog(@"%@",mutStr);
       
       
    }
   
return 0;
}
0 0
原创粉丝点击