OC语言学习03-字符串
2017-07-12 17:58
344 查看
//字符串对象 NSString
//1.字符串前面加上@
//2.打印字符串对象用 %@
//3.OC字符串对象每一个字符都是unichar,符合Unicode,使用UTF-8编码存储
#import <Foundation/Foundation.h>
int main(int argc,
const char * argv[]) {
@autoreleasepool {
char *cstring =
"Hello World!";
printf("%s\n",cstring);
//ocString是一个对象指针,指向常量区的字符串对象
NSString *ocString =
@"China";//存储在常量区
NSLog(@"ocString = %@", ocString);
//创建一个字符串对象
//initWithUTF8String构造方法是将C语言字符串转换为OC字符串对象
NSString *str1 = [[NSString
alloc] initWithUTF8String:"How are you"];
NSLog(@"%@",str1);
//格式化构造OC字符串
NSString *str2 = [[NSString
alloc] initWithFormat:@"%s*****%d****%@","China",13,str1
];
NSLog(@"%@",str2);
//传递字符串对象,构造新的字符串
NSString *str0 =
@"早上好!";
NSString *str3 = [[NSString
alloc] initWithString:str0];
NSLog(@"%@",str3);
}
return
0;
}
二、字符串的使用
#import <Foundation/Foundation.h>
int main(int argc,
const char * argv[]) {
@autoreleasepool {
//1.NSString的比较
NSString *str1 = [NSString
stringWithFormat:@"%@",
@"Hello World"];
NSString *str2 = [NSString
stringWithUTF8String:"Hello world"];
//compare
//NSOrdereAscending = -1L,递增
//NSOrdereSame = 0,
相等
//NSOrderedDescending = 1
递减
NSComparisonResult ret1 = [str1
compare:str2];
if(ret1 ==
NSOrderedAscending) {
NSLog(@"str1 < str2");
}
else
if (ret1 == NSOrderedSame){
NSLog(@"str1 = str2");
}
else {
NSLog(@"str1> str2");
}
//以大小写不敏感方式比较字符串大小
//- (NSComparisonResult)caseInsensitiveCompare:(NSString *)string;
NSString *str3 =
@"welcome to China";
NSString *str4 =
@"welcome to China";
NSComparisonResult ret2 = [str3
caseInsensitiveCompare:str4];
if(ret2 ==
NSOrderedAscending) {
NSLog(@"str3 < str4");
}
else
if(ret2 == NSOrderedSame) {
NSLog(@"str3 = str4");
}
else
if(ret2 == NSOrderedDescending) {
NSLog(@"str3 > str4");
}
NSString *str5 = [NSString
stringWithCString:"how are you"
encoding:NSUTF8StringEncoding];
NSString *str6 = [NSString
stringWithUTF8String:"how are you"];
BOOL ret4 = [str5
isEqualToString:str6];
if(ret4 ==
YES) {
NSLog(@"str5
等于 str6");
}
else {
NSLog(@"str5
不等于 str6");
}
//判断是否以传入字符串开头
BOOL ret5 = [@"www.spro.com"
hasPrefix:@"www"];
if(ret5 ==
YES) {
NSLog(@"是以字符串开头");
}
else {
NSLog(@"不是以字符串开头");
}
}
return
0;
}
//1.字符串前面加上@
//2.打印字符串对象用 %@
//3.OC字符串对象每一个字符都是unichar,符合Unicode,使用UTF-8编码存储
#import <Foundation/Foundation.h>
int main(int argc,
const char * argv[]) {
@autoreleasepool {
char *cstring =
"Hello World!";
printf("%s\n",cstring);
//ocString是一个对象指针,指向常量区的字符串对象
NSString *ocString =
@"China";//存储在常量区
NSLog(@"ocString = %@", ocString);
//创建一个字符串对象
//initWithUTF8String构造方法是将C语言字符串转换为OC字符串对象
NSString *str1 = [[NSString
alloc] initWithUTF8String:"How are you"];
NSLog(@"%@",str1);
//格式化构造OC字符串
NSString *str2 = [[NSString
alloc] initWithFormat:@"%s*****%d****%@","China",13,str1
];
NSLog(@"%@",str2);
//传递字符串对象,构造新的字符串
NSString *str0 =
@"早上好!";
NSString *str3 = [[NSString
alloc] initWithString:str0];
NSLog(@"%@",str3);
}
return
0;
}
二、字符串的使用
#import <Foundation/Foundation.h>
int main(int argc,
const char * argv[]) {
@autoreleasepool {
//1.NSString的比较
NSString *str1 = [NSString
stringWithFormat:@"%@",
@"Hello World"];
NSString *str2 = [NSString
stringWithUTF8String:"Hello world"];
//compare
//NSOrdereAscending = -1L,递增
//NSOrdereSame = 0,
相等
//NSOrderedDescending = 1
递减
NSComparisonResult ret1 = [str1
compare:str2];
if(ret1 ==
NSOrderedAscending) {
NSLog(@"str1 < str2");
}
else
if (ret1 == NSOrderedSame){
NSLog(@"str1 = str2");
}
else {
NSLog(@"str1> str2");
}
//以大小写不敏感方式比较字符串大小
//- (NSComparisonResult)caseInsensitiveCompare:(NSString *)string;
NSString *str3 =
@"welcome to China";
NSString *str4 =
@"welcome to China";
NSComparisonResult ret2 = [str3
caseInsensitiveCompare:str4];
if(ret2 ==
NSOrderedAscending) {
NSLog(@"str3 < str4");
}
else
if(ret2 == NSOrderedSame) {
NSLog(@"str3 = str4");
}
else
if(ret2 == NSOrderedDescending) {
NSLog(@"str3 > str4");
}
NSString *str5 = [NSString
stringWithCString:"how are you"
encoding:NSUTF8StringEncoding];
NSString *str6 = [NSString
stringWithUTF8String:"how are you"];
BOOL ret4 = [str5
isEqualToString:str6];
if(ret4 ==
YES) {
NSLog(@"str5
等于 str6");
}
else {
NSLog(@"str5
不等于 str6");
}
//判断是否以传入字符串开头
BOOL ret5 = [@"www.spro.com"
hasPrefix:@"www"];
if(ret5 ==
YES) {
NSLog(@"是以字符串开头");
}
else {
NSLog(@"不是以字符串开头");
}
}
return
0;
}
相关文章推荐
- OC语言之学习篇——03——代理模式
- 黑马程序员——OC语言学习——OC面向对象的三大特性:封装、继承、多态,OC字符串——NSString
- 通过实例学习Virtools脚本语言VSL - 解析字符串
- 通过实例学习Virtools脚本语言VSL - 从数组读取字符串
- 数据处理的两个基本问题03 - 零基础入门学习汇编语言40
- Call指令和Ret指令讲解03 - 零基础入门学习汇编语言50
- Call指令和Ret指令讲解03 - 零基础入门学习汇编语言50
- 通过实例学习Virtools脚本语言VSL - 合并字符串
- int指令03 - 零基础入门学习汇编语言66
- 更灵活的定位内存地址的方法03 - 零基础入门学习汇编语言34
- 深入学习C语言知识点checklist——字符串
- 内中断03 - 零基础入门学习汇编语言62
- 通过实例学习Virtools脚本语言VSL - 从数组读取字符串
- 寄存器(内存访问)03 - 零基础入门学习汇编语言15
- 寄存器(内存访问)03 - 零基础入门学习汇编语言15
- 更灵活的定位内存地址的方法03 - 零基础入门学习汇编语言34
- 通过实例学习Virtools脚本语言VSL - 解析字符串
- 基础知识03 - 零基础入门学习汇编语言03
- 第一个程序03 - 零基础入门学习汇编语言22
- 转移指令的原理03 - 零基础入门学习汇编语言45