Swift学习笔记-字符串

字符串字面量
  • 使用字符串字面量作为常量或者变量的初始值:

let someString = "some string literal value"
// 注意:Swift会为someString常量推断类型为string,因此你用了字符串字面量值来初始化。

  • 多行字符串字面量,使用三个双引号引起来

let example = """
Are
U
OK
"""

初始化一个空字符串

var emptyString = "" // 空字符串赋值
var anotherEmptyString = String() // 初始化方法

字符串的可变性
  • 链接字符串

let string1 = "hello"
let string2 = " there"
var welcome = string1 + string2
// welcome = "hello there"

var instruction = "look over"
instruction += string2
// instruction = "lock over there"

  • 链接字符串和字符:使用 String类型的 append()方法

let exclamationMark : Character = "!"
welcome.append(exclamationMark)
// welcome = "hello there!"

  • 字符串索引: startIndex/endIndex,前者是string的第一个character的位置,后者是最后一个字符的后一位

let greeting = "Guten Tag!"
greeting[greeting.startIndex]
// G
greeting[greeting.index(before: greeting.endIndex)]
// !
greeting[greeting.index(after: greeting.startIndex)]
// u
let index = greeting.index(greeting.startIndex, offsetBy: 7)
greeting[index]
// a

使用 characters属性的 indices属性来创建所有能够用来访问字符串中独立字符的索引范围 Range
for index in greeting.characters.indices {
print("(greeting[index]) ", terminator: "")
}

  • 插入和删除
    1. 插入:要给字符串的特定索引位置插入字符,使用 insert(_:at:)方法,另外要冲入另一个字符串的内容到特定的索引,使用 insert(contentsOf:at:) 方法。

var welcome = "hello"
welcome.insert("!", at: welcome.endIndex)
// welcome now equals "hello!"

welcome.insert(contentsOf:" there".characters, at:welcome.index(before: welcome.endIndex))
// welcome now equals "hello there!"

2.删除:要从字符串的特定索引位置移除字符,使用 remove(at:)方法,另外要移除一小段特定范围的字符串,使用 removeSubrange(_:) 方法:

welcome.remove(at: welcome.index(before: welcome.endIndex))
// welcome now equals "hello there"

let range = welcome.index(welcome.endIndex, offsetBy: -6).. welcome.removeSubrange(range)
// welcome now equals "hello"

字符串/字符相等性
  • 字符串和字符相等性 :字符串和字符相等使用“等于”运算符 ( ==) 和“不等”运算符 ( !=)进行检查
  • 前缀和后缀相等性 : 要检查一个字符串是否拥有特定的字符串前缀或者后缀,调用字符串的 hasPrefix(:)和 hasSuffix(:)方法

你可能感兴趣的:(Swift学习笔记-字符串)