#import <Foundation/Foundation.h>
int main(int argc, const char *argv[])
{
@autoreleasepool
{
/*____________(不可变)字符串 NSString_______________________________*/
//创建 -> 属性 -> 方法
//1.通过C的字符串
//c -> oc
char *cString = "cString";
NSString *ocStr1 = [[NSString alloc]initWithUTF8String:cString];
NSString *ocStr2 = [NSString stringWithUTF8String:cString];
NSString *ocStr3 = [NSString stringWithCString:cString encoding:NSUTF8StringEncoding];
NSLog(@"%@",ocStr1);
//oc -> c
const char *cStr = [ocStr1 UTF8String];
//2.初始化
//1.实例方法
//快速创建:更改字符串 -> 更改了指针的指向地址
NSString *string = @"string";
string = @"新字符串,并不是在原来的字符串上修改";
//NSString *str1 = [[NSString alloc]initWithString:@"字符串"];
NSString *str2 = [[NSString alloc]initWithFormat:@"%@哈哈%@",string,string];
NSLog(@"%@",str2);
//2.类方法
//NSString *str3 = [NSString stringWithString:@"类方法创建字符串"];
NSString *str4 = [NSString stringWithFormat:@"%d %@ %f",10,string,10.0];
/*____________________________________________________________________*/
//3.属性
//NSUInteger length = [string length];
NSLog(@"%ld",length);
//4.方法
//判断字符串的内容是否相同
BOOL isEqual = [string isEqualToString:str2];
//判断字符串的地址是否相同
NSLog(@"%@",(str2 == str4)?@"地址相同":@"地址不同");
//比较字符串的大小 -> 升序 相同 降序
NSComparisonResult result = [@"aaa"caseInsensetiveCompare:@"bbb"];
switch(result)
{
case NSOrderedAscending:
NSLog(@"升序");
case NSOrderedSame:
NSLog(@"平序");
case NSOrderdDescending:
NSLog(@"降序");
break;
default:
break;
}
//❗️转换:大小字母转换
NSString *str5 = @"abcdefg hijklmn OPQRST UVWXYZ";
//1.全部变大写字母
NSLog(@"%@",[str5 uppercaseString]);
//2.全部变小写字母
NSLog(@"%@",[str5 lowercaseString]);
//3.首字母大写 -> 每个单词的首字母大写,其他小写
NSLog(@"%@",[str5 capitalizedString]);
//str5还是原来的
NSLog(@"%@",str5);
//❗️转化:基本数据类型
NSString *str6 = @"10086";
int intS = [str6 intValue];
NSInteger inteS = [str6integerValue];
float floS = [str6 floatValue];
double douS = [str6 doubleValue];
BOOL boolS = [str6 boolValue];
/*________________________字符串的截取____________________________________*/
//1.分割
NSString *urlString = @"www.xiaoming.com";
//将参数作为分隔符,将字符串分割成若干份
NSArray *array = [urlString componentsSeparatedByString:@"."];
NSLog(@"%@",array);
//2.获取字符
char chaaracter = [urlString characterStIndex:4];
NSLog(@"%c",character);
//3.截取
//截取到下标(不包括下标字符)
NSLog(@"%@",[urlString substringToIndex:5]);
//自下标截取(包括下标字符)
NSLog(@"%@",[urlString substringFromIndex:5]);
//范围截取
/*
typedef stut _NSRange
{
NSUInteger location; //位置 -> 下标 -> 4
NSUInteger length; //长度 -> 长度 -> 7
}NSRange;
*/
//c创建结构体
NSRange range1 = (4,7);
//oc创建结构体
NSRange range = NSMakeRange(4,7);
NSLog(@"%@",[urlString substringWithRange:range]);
//4.拼接 appending
NSString *appString = @"拼接字符串:";
//拼接字符串
NSLog(@"%@",[appString stringByAppendingString:@"尾端添加字符串"]);
//拼接格式化字符串
NSLog(@"%@",[appString stringByAppendingFormat:@"尾端添加格式化字符串%d",100]);
//拼接扩展名 。pdf
NSLog(@"%@",[appString stringByAppengdingPathExtension:@"dmg"]);
//拼接路径 /path
NSLog(@"%@",[appString stringByAppendingPathComponent:@"dmg"]);
//5.查找
NSString *findString = @"/*路径*/ /Users/CORYIL/Lirary";
NSRange findResult = [findString rageOfString:@"Documents"];
//将结构体转化为字符串 NSStringFromXXX(结构体)
NSLog(@"%@",NSStringFromRange(findResult));
//6.替换 replacing
//根据range替换
NSString *newString = [findString stringByReplacingCharactersInRange:findResult withString:@"呵呵"];
NSLog(@"%@",newString)
//直接替换
NSLog(@"%@",[findString stringByReplacingOccurrencesOfString:@"Users" withString:@"用户们"]);
}
return 0;
}
OC -- NSString字符串
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 版权声明:本文为博主原创文章,未经博主允许不得转载。 1、OC基本数据类型(简单铺垫) 2、如何使用API文档学习...
- 第一种方式:字符串 是否包含某个 字符串 NSString *Str = @"Hello 支付";if([Str ...