#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) {
@autoreleasepool {
//字符串创建 方法1:直接赋值方法创建,字符串常量
NSString *s1=@"北京下雪了";
//方法二:通过构造方法initWithFormat:创建字符串,可以通过指定的字符串参数完成多个字符串的组合
NSString *s2=[[NSString alloc]initWithFormat:@"2017,1,16%@",s1];
NSLog(@"%@",s2);
//方法三:通过构造方法:initWithString:创建字符串,使用这个方法时,需要传入一个不为空的字符串
NSString *s3=[[NSString alloc]initWithString:s2];
NSLog(@"s3=%@",s3);
//方法四:使用类方法创建字符串
NSString *s4=[NSString stringWithFormat:@"%@%@",s2,s3];
NSLog(@"s4=%@",s4); char *p="我是C字符串";
//将C的转换成OC的字符串
NSString *s5=[NSString stringWithUTF8String:p];
//定义一个OC的串,通过UTF8String转换成C的字符串
s5=@"hello world";
NSLog(@"****%s",[s5 UTF8String]);
//characterAtIndex:通过传入的下标来返回对于的字符
NSLog(@"%c",[s5 characterAtIndex:5]); NSLog(@"s1的长度是:%ld",s1.length);
NSLog(@"s5的长度是:%ld",s2.length);
//截取从制定的下标开始(包含下标),到结束
NSLog(@"%@",[s5 substringFromIndex:2]);
//截取从字符串开始位置到指定下标的前一个字符,这个区间的字符串(不包含指定下标对应的字符)
NSLog(@"%@",[s5 substringToIndex:5]); NSRange range;
range.location=3;
range.length=6;
//截取指定范围的字符串,包含location这个位置的字符
NSLog(@"%@", [s5 substringWithRange:range]); NSString *s6=@"beijing";
//isEqualToString:判断存放的字符串是否相等,s5==s6是对指针的地址的判断
if ([s5 isEqualToString:s6]) {
NSLog(@"s5与s6相等");
}else{
NSLog(@"s5与s6不相等");
} //s5=@"hello world"; s6=@"beijng";
//s5比s6大,返回的值为正数
NSLog(@"%d",[s5 compare:s6]);
NSLog(@"%d",[s6 compare:s5]); NSString *s7=@"Beijing";
//在进行比较多额时候忽略字符串大小写
NSLog(@"%d",[s6 compare:s7 options:NSCaseInsensitiveSearch]); //hasPrefix:在进行前缀判断的时候是区分大小写的
if ([s7 hasPrefix:@"bei"]) {
NSLog(@"包含");
}else{
NSLog(@"不包含");
} if ([s7 hasSuffix:@"ing"]) {
NSLog(@"包含ing"); }else{
NSLog(@"不包含ing");
} //判断字符串中是否包含指定的字符串,如果包含返回true 反之返回false
if ([s7 containsString:@"ei"]) {
NSLog(@"包含ei"); }else{
NSLog(@"不包含ei");
} NSRange range1=[s7 rangeOfString:@"ei"];
NSLog(@"%d%d",range1.location,range1.length);
//NSStringFromRange(range1) 将结构体转换成字符串输出
NSLog(@"%@",NSStringFromRange(range1)); }
return 0;
}