Swift Lession 03
字符串和字符
一个字符串是一连串的字符租车,例如:”hello, world”
Swift的字符串相当于String
类型。
小提示
Swift 的
String
类型是Foundation
的NSString
类的桥梁
任意的String
类型运行在Foundation
上时,可以调用NSString
的可使用的API。
逐字的字符串
字符串是一连串固定的字符组成被一对双引号
""
包围。
|
|
初始化一个空串
|
|
字符串的可变性
|
|
String
是数据类型
在 swift 中
String
是一种数据类型,如果你创建一个String
值,这个值被拷贝通过一个函数或方法,或当它被分配给一个常量或者变量,一个新的String
值将会被创建,它不在是原先的String
版本了。
字符工作模式
字符串可以转换成字符数组。
|
|
如果你想创建一个单独的字符,可以显示的声明。
|
|
字符串可以通过初始化传递一个字符数组来创建。
|
|
串联字符串和字符
字符串可以被相加使用操作符
+
来创建一个新的字符串。
|
|
字符串插入
字符串插入是一种构建一个由常量,变量,字符或者表达式组合的字符串。
|
|
这个表达式写在圆括号内部,但是这个表达式不能包含保留的反斜杠(
\
)
Unicode
Unicode
是一个国际化的标准编码
纯粹的 Unicode(Unicode Scalars)
Swift 本地
String
类型是基于纯粹的Unicode
值。
特殊的字符在字符串中
字符串能够包含以下的特殊字符:
\0
(空字符串),\\
(反斜杠),\t
(横向制表符),\n
(换行符),\r
(回车符),\"
(双引号),\'
(单引号)- 一个纯粹的 Unicode值,写作
\u{n}
,在这里n是一个1到8位的16进制数字。
|
|
扩展的字形串
|
|
统计字符串
从一个字符串中取得字符的总数,使用
String
的character
属性里的count
属性。
|
|
访问和修改字符串
你访问和修改一个字符串通过它们自由的方法和属性,或者使用下标语法。
字符索引
每个
String
值都和index
类型有联系。String.Index
, 相当于每个字符在字符串中的位置。
使用startIndex
属性去访问字符串中的第一个位置的字符。
使用endIndex
属性去访问字符中的最后一个字符。
这个endIndex
属性不是一个有效参数对于一个字符串小标。
如果一个字符串为空startIndex
和endIndex
是相同的。
|
|
插入和删除字
插入一个字符在指定的位置,使用
insert(_:atIndex:)
方法。
插入一个字符串在指定的位置,使用insertContentsOf(_:at:)
方法。
|
|
删除一个指定位置的字符,使用
removeAtIndex(_:)
方法。
删除一个子串,使用RemoveRange(_:)
方法。
|
|
比较字符串
Swift 提供了三种方式来比较字符串
- 字符串和字符相等
- 前缀相等
- 后缀相等
字符串和字符相等
判断字符串和字符相等使用等于操作符
==
和不等操作符!=
|
|
前缀和后缀相等
检验一个字符串的前缀和后缀,使用
hasPrefix(_:)
和hasSuffix(_:)
方法,它们都返回一个Boolean
值。
|
|
字符串的Unicode表现形式
一般有三种Unicode表现形式。
- 一批
UTF-8
字符集。- 一批
UTF-16
字符集。- 一批
UTF-32
字符集。
|
|