Swift学习10:字符串常见操作

张建 lol

字符串的可变性

  • var 指定的可以修改

  • let 指定的不可修改

  • 对比 Object-C (NSString 和 NSMutableString)

字符串是 值类型

  • String 值在传递给方法或函数的时候会被复制过去

  • 赋值给常量或变量的时候也是一样

  • Swift 编译器优化了字符串使用的资源,实际上拷贝只会在确实需要的时候才进行

1
2
3
4
5
6
var str1 = "hello"
var str2 = str1
print(str1 == str2)
str1.append(",world")
print(str1)
print(str2)

操作字符

  • for in 循环遍历 String 中的每一个独立的 Character

  • Character 类型

  • String 值可以通过传入 Character 数组来构造

1
2
3
4
var str = "hello"
for c in str{
print(c)
}

字符串的拼接

  • 使用加运算符 + 创建新字符串

  • 使用 + 赋值符号 += 在已经存在的 String 值末尾追加一个 String

  • 使用 String 类型的 append() 方法来可以给一个 String 变量的末尾追加 Character

字符串插值

  • 字符串插值是一种从混合常量、变量、字面量和表达式的字符串字面量构造新 String 值的方法

  • 每一个你插入到字符串字面量的元素都要被一对圆括号包裹,然后使用反斜杠前缀 \()

  • 类似于 NSStringstringWithFormat 方法,但是更加简便,更强大

  • 可以在扩展字符串分割符中创建一个包含在其他情况下会被当做字符串插值的字符

  • 要在使用扩展分隔符的字符串中使用字符串插值,在反斜杠后使用匹配首尾井号数量的井号

1
2
let str = "6 * 7 = \(6 * 7)"
print(str)

  • Post title:Swift学习10:字符串常见操作
  • Post author:张建
  • Create time:2023-02-22 02:58:45
  • Post link:https://redefine.ohevan.com/2023/02/22/Swift课程/Swift学习10:字符串常见操作/
  • Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.