swift String 的用法
1、创建空字符串
注意: String 是一个结构体,如上图是xcode 关于String的空说明,一共有三种,如下图
以上是3种创建空字符串的方式。
2、通过 Character 类型的数组 创建字符串 如下图
3、获取字符串长度
使用
bookChi.count
或
bookEng.characters.count
来获取字符串长度。
其中第二种方法 在swift 3.0 后已经被摒弃
4、字符串遍历
swift 3.0之前
swift 3.0 之后,摒弃了characters这个方法,可以对字符串直接遍历
5、字符串转化。
仅仅包含纯数字的字符串可以像基本数据类型直接转化。
转double 这里要注意 numNum 属于 double? 类型,在使用时需要 !操作
let numStr = "837474.5587899"
let numNum = Double(numStr)
print("str--\(numStr) --- double--\(numNum!)--")
转int 对于字符串中包含 小数点(.)的字符串, 在swift 中没有直接像OC那样的.length 操作。需要先将字符串转double 在将double转int。
如下:
如果非想使用oc中的字符串方法,代码如下
对于不包含小数点(.)的字符串,直接使用转化就可以(如下图)。注意如果对带小数点的字符串直接转化,会crash(大意是说对nil执行!操作)
6、一个字符串中是否包含另一个字符串
7、字符串拼接
swift 中的拼接,非常简单 + 就可以 如图 : 将三个字符串拼接起来
或者 使用
appendingFormat
方法 如下图
8、字符串截取
1️⃣、从第0位截到某位
或者,使用新方法, 先获取到 String.index 在根据 它取出从第0位到第某位的子字符串
2️⃣、从最后一位向前截取到某位
或
3️⃣、从指定位置截取到指定位置 根据swift特性, 严格意义上说是 从某个String.index 截取到 某个String.index
9、字符串的插入与删除
字符串插入的操作如下
你发现,并没有获取到预想的那样的结果,不要急, 字符串的insert的方法是一个没有返回值(返回值为void)得方法,因此,这里没有打印结果。调整一下
这样就可以了
通过bookChi的值,我们发现,向字符串中插入一个字符串,实际上改变了原来字符串的值,而不是生成了一个新的字符串,因此,bookChi 需要用 var 来声明。
在指定位置添加指定字符串
删除字符串 – 删除最后一个字符
删除 指定范围的字符串,原理与插入相同
准确理解 string.index 的功能和角色很重要
我是磊怀, 2849765859 请您联系我