黑马程序员技术交流社区
标题:
oc基础笔记2
[打印本页]
作者:
韩三少
时间:
2015-11-12 21:01
标题:
oc基础笔记2
2.不可变字符串
OC的字符串是一个对象, 它的类型是NSString类.
OC所以会使用自己专有的字符串, 因为这个字符串是个对象, 有很多的方法, 比外来函数如strlen等更方便, 更面向对象.
NSString * str = @"Hello World!";
// @"Hello World!"这个表达式表示在只读数据段里, 创建了一个NSString的对象, 内容是Hello World!, 表达式的值是该对象的地址, 只有字符串可以这样创建一个对象
// NSString的对象是不可变的
// NSMutableString的对象是可变的
NSString * str2 = [[NSString alloc] initWithString: str];
NSString * str3 = [[NSString alloc] initWithUTF8String:"HEllo World!"];
//用C的字符串创建OC的字符串, 完成C的字符串转换成OC的字符串
char * cString = [@"Objective-C String" UTF8String]; // 将OC字符串转换为C字符串
NSString * str4 = [[NSString alloc] initWithFormat:@"hello %c %d %f", 'A', 3, 3.14];
// 根据格式符, 拼接创建一个字符串, 最强大
还有类方法[NSString stringWithString: str];
[NSString stringWithUTF8String:"hello"];
[NSString stringWithFormat:@"hello %d", 5];
characterAtIndex
length // 没有尾0
转换大小写:
uppercaseString // 全大写
lowercaseString // 全小写
capitalizedString // 单词首字母大写
比较大小:
isEqualToString
compare
hasPrefix: // 是否包含前缀
hasSuffix: // 是否包含后缀
查找:
rangeOfString 查找字符串中子串的范围, range.location range.length
提取子串:
subStringToIndex
subStringFromIndex
subStringWithRange
结构体的对象能存储在栈里, 而类的对象不能存储在栈里.
作者:
神陪我流浪
时间:
2015-11-12 21:42
刚好用到 收藏了 谢谢分享
作者:
歪歪头
时间:
2015-11-13 23:32
谢谢分享
作者:
蜗牛飞翔
时间:
2015-11-13 23:35
该学了 ,正好收藏
作者:
蜗牛飞翔
时间:
2015-11-14 23:11
谢谢分享
作者:
yufang1993
时间:
2015-11-14 23:47
默默点赞!!!!!!!!!!!!
作者:
huihui1030
时间:
2015-11-15 00:22
今天第一天学OC感觉还不适应。。。加油。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2