1.字符串字面量
字符串字面量: 字符串字面量是由双引号包裹着的具有固定顺序的文本字符
例如: let = someString = "Hello World!"
字符串常量可包含的字符:
1. 转义字符 \0(空字符)、\\(反斜线)、\t(水平制表符)、\n(换行符)、\r(回车符)、\"(双引号)、\'(单引号)
2. 单字符 Unicode标量,写成 \xnn,其中 nn 为两位十六进制数。
2. 单字符 Unicode标量,写成 \unnnn,其中 nnnn 为四位十六进制数。
2. 单字符 Unicode标量,写成 \Unnnnnn,其中 nnnnnn 为八位十六进制数。
2.初始化空字符串
空字符串: var emptyString =""
var emptyString = String()
// 两个字符串都为空,并且两者等价
判断字符串是否为空: (1) (BOOL)isEmpty
(2) count(string1) ==0
3.字符串可变性
将字符串废品给一个常量(不可对其进行修改)
字符串拼接: var str ="111"
str += "333"
// 注:字符串拼接后 str 地址发生变化
// Swift 的 String类型是值类型。!!!
4.字符串是值类型
在不同情况下,都会对已有字符串创建新副本, 并对新副本进行传递或赋值
比较: OC
Swift
5.使用字符
遍历: for-in
创建独立的字符常量或变量: var yenSign: Character ="Y"
6.计算字符量
计算字符量: var test ="www eee rrr"
println("count:\(count(test))")
// countElements has been renamed to count
// count 函数必须遍历字符串中的字符,以精准计算字符串的长度
7.链接字符串和字符
可以通过 (+) 连接
也可以通过 (+=) 连接
// 注:不能将一个字符串或字符添加到一个已经存在的字符变量上,因为字符变量只能包含一个字符
8.字符串插值
字符串插值: 插入的字符串字面量的每一项都被包裹在"\()"中
// 注:插值字符串中写在括号中得表达式不能包含非转义双引号(")和反斜杠(\)并且不能包含回车或换行符
9.比较字符串
1. == 比较两个字符是否相等
2. hasPrefix (开头)
3. hasSuffix (结尾)
10.大写和小写字符串
1. uppercaseString (大写)
2. lowercaseString (小写)
2、String 使用
1.NSString 和 String 的相互装换
NSString 转换 String
var text: NSString = NSString(CString: titleLabel!.text!.cStringUsingEncoding(NSUTF8StringEncoding)!,encoding: NSUTF8StringEncoding)!
2.UI中计算文字的尺寸let size = CGSize(width: Int.max,height: Int.max) let boundSize = titleLabel?.text!.boundingRectWithSize(size,options: NSStringDrawingOptions.UsesLineFragmentOrigin,attributes: [NSFontAttributeName : UIFont.systemFontOfSize(15.0)],context: nil)