万物皆为对象
API(application programming interface, 应用程序编程接口)
在程序调用的时候,一般说提供接口,即方法.
举例:
//1.创建对象
//2.两种方式:
//(1)便利构造器(+ 号方法)
NSString *str1 = [NSString stringWithFormat:@"iPhone%d", 5];
NSLog(@"str1 = %@", str1);
//(2)alloc + 初始化方法
NSString *str2 = [[NSString alloc] initWithFormat:@"iPhone%d", 5];
NSLog(@"str2 = %@", str2);
//(3)根据字符串初始化OC字符串对象
NSString *str3 = @"Lanou"; //指向的空间为常量区,存储常量字符串@"lanou"的地址
NSLog(@"%p", str3);
//2.求字符串长度
NSUInteger len = [str1 length];
NSLog(@"legth = %lu", len);
//3.获取字符串中的某个字符
unichar charac = [str1 characterAtIndex:2];
NSLog(@"char = %c", charac);
//4.判断是否以指定的字符串开头,或者一指定的字符串结尾
//例如:判断一个字符串是否以http开头,是否以.com结束
NSString *webUrl = [NSString stringWithFormat:@"http://www.baidu.com"];
//判断是否以http开头
BOOL isPrefix = [webUrl hasPrefix:@"http"];
NSLog(@"isPrefix = %d", isPrefix);
//判断是否以.com结尾
BOOL isSuffix = [webUrl hasSuffix:@"com"];
NSLog(@"isSuffix = %d", isSuffix);
//5.查找指定字符串的范围
NSString *webUrl = [NSString stringWithFormat:@"http://www.baidu.com"];
NSRange range = [webUrl rangeOfString:@"baidu"];
if (range.length == 0) {
NSLog(@"没有找到对应的字符串");
} else {
//NSLog(@"location:%lu, length:%lu", range.location, range.length);
//将NSRange类型的结构体变量转变成字符串对象
NSLog(@"%@", NSStringFromRange(range));
}
//6.字符串截取(获取子字符串)
//(1)获取给定下标之后的子串,包含指定下标对应的字符
//对字符串进行操作,操作的是定义的字符串的副本.
NSString *webUrl = [NSString stringWithFormat:@"http://www.baidu.com"];
NSString *getSubStr = [webUrl substringFromIndex:11];
NSLog(@"%@", getSubStr);
//(2)获取给定下标之前的子串,从下标为0开始,但是不包括指定下标对应的字符
NSString *getSubStr1 = [webUrl substringToIndex:11];
NSLog(@"%@", getSubStr1);
//(3)获取指定范围内的子串
//例如:获取baidu
NSString *getSubStr2 = [webUrl substringWithRange:NSMakeRange(11, 5)];
NSLog(@"%@", getSubStr2);
//7.字符串拼接
NSString *str = [NSString stringWithFormat:@"lanou"];
//lanou 后拼接 henan
NSString *str1 = [str stringByAppendingString:@"henan"];
NSLog(@"%@", str1);
//lanou 后拼接 henan9ban
NSString *str2 = [str stringByAppendingFormat:@"%@", str1]; //Format 可以在字符串里边加上格式串
NSLog(@"%@", str2);
//8.替换字符串
NSString *str = [NSString stringWithFormat:@"lanou is a big big big company"];
//将big 替换成 niubi
NSString *str1 = [str stringByReplacingOccurrencesOfString:@"big" withString:@"niubi"];
NSLog(@"%@", str1);
//只将第一个big 替换成 niubi
NSString *str2 = [str stringByReplacingCharactersInRange:NSMakeRange(11, 3) withString:@"niubi"];
NSLog(@"%@", str2);
//9.字符串比较
NSComparisonResult result = [@"222" compare:@"333"];
NSLog(@"result:%ld", result);
//10.字符串和数值类型转换
//1.@"123", 将字符串123转换成整数123
//从第一个字符开始,如果在遇到除了空格之外的字符时,将前面的空格忽略掉,继续往下找,读到数字,知道遇到非数字时结束
int a = [@" 1 d23" intValue];
NSLog(@"%d", a);
//2.@@"123", 将字符串123转换成浮点型123.00
float b = [@"123" floatValue];
NSLog(@"%.2f", b);
//讲数字转为字符串对象
NSString *str = [NSString stringWithFormat:@"%d", 9];
NSLog(@"%@", str);
//11.大小写转换操作
//(1)将@"lan OU"全部转为大写
NSString *str0 = [@"lan OU" uppercaseString];
NSLog(@"%@", str0);
//(2)将@"lan OU"全部转为小写
NSString *str1 = [@"lan OU" lowercaseString];
NSLog(@"%@", str1);
//(3)将@"lan OU"每个单词的首字母大写
NSString *str2 = [@"lan OU" capitalizedString];
NSLog(@"%@", str2);
NSMutableString *str = [NSMutableString stringWithFormat:@"lanouhenan"];
//对于可变字符串的增删改方法,都是在远字符串基础上进行修改,所以修改之后原字符串的内容发生变化,所以无需返回值.
//1.在字符串str基础上拼接Frank
[str appendFormat:@"Frank"];
NSLog(@"%@", str);
//2.在字符串str基础上拼接Frank
[str appendString:@"Frank"];
NSLog(@"%@", str);
//3.删除字符串,在原字符串基础上删除henan
[str deleteCharactersInRange:NSMakeRange(5, 5)];
NSLog(@"%@", str);
//4.插入字符串,在原字符串基础上插入lanou
[str insertString:@"wo ai " atIndex:0];
NSLog(@"%@", str);
//5.替换字符串,在原字符串基础上将第一个Frank替换成Duck
[str replaceCharactersInRange:NSMakeRange(11, 5) withString:@"Duck"];
NSLog(@"%@", str)
CO之NSString, NSArray, NSNumber
最新推荐文章于 2015-12-16 11:38:12 发布