Swift中的字符串和字符

1. 初始化空字符串

var emptyString = ""
var anotherEmptyString = String()
// 两个字符串均为空并等价

判断字符串是否为空:

if emptyString.isEmpty {
    print("Nothing to see here")
}

2. 字符串是值类型

Swift中的String类型是值类型。如果你创建了一个新的字符串,那么当其进行常量、变量赋值操作,或在函数/方法中传递时,会进行值拷贝。任何情况下,都会对已有字符串值创建新副本,并对该副本进行传递或赋值操作。

3. 访问和修改字符串

3.1 字符串索引

  • Index:String.Index对应着字符串中每一个Character的位置
  • startIndex:可以获取一个String的第一个Character的索引
  • endIndex:最后一个Character的索引,非有效下标
  • index(before:):前一个索引
  • index(after:):后一个索引
  • index(_:offsetBy:):对应偏移量的索引
  • indices:创建一个包含全部索引的范围(Range),用来在一个字符串中访问单个字符

3.2 插入和删除

  • insert(_:at:):在一个字符串的指定索引插入一个字符
  • insert(contentsOf:at:):在一个字符串的指定索引插入一段字符串
  • remove(at:):在一个字符串的指定索引删除一个字符
  • removeSubrange(_:):在一个字符串的指定索引删除一个子字符串
var welcome = "hello there!"
welcome.remove(at: welcome.index(before: welcome.endIndex))
let range = welcome.index(welcome.endIndex, offsetBy: -6)..<welcome.endIndex
welcome.removeSubrange(range)
// welcome 现在等于"hello"

3.3 比较字符串

3.3.1 字符串/字符相等

字符串/字符可以用操作符==!=比较是否相等。

3.3.2 前缀/后缀相等

hasPrefix(_:)hasSuffix(_:)用来检查字符串是否拥有特定前缀/后缀。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容