美文网首页Swift
8.Swift学习之字符串

8.Swift学习之字符串

作者: YungFan | 来源:发表于2018-09-25 14:13 被阅读69次

    字符串的介绍

    • 字符串在开发中使用得非常频繁
    • OC和Swift中字符串的区别
      • 在OC中字符串类型是NSString,在Swift中字符串类型是String
      • OC中字符串@"",Swift中字符串""
    • 使用 String 的原因
      • String 是一个结构体,性能更高
      • NSString 是一个 OC 对象,性能略差
      • String 支持直接遍历

    字符的定义

    • 定义不可变字符串
    let str = "hello Objective-C"
    
    • 定义可变字符串
    var str = "hello Swift"
    
    • 多行字符串
    """
    静夜思
    作者:李白
    床前明月光,疑是地上霜。
    举头望明月,低头思故乡。
    """
    

    字符串的常用操作

    • 长度
    let str = "12345678"
    let len2 = str.count  //8
    let len3 = (str as NSString).length  //8
    
    • 拼接
      • +号
      • append
    let str1 = "abc" + "cde"
    var str = "abc"
    str.append("cde")
    
    • 遍历
    let str = "abcdefg"
    for char in str {
        print(char)
    }
    ---------------------
    let str = "abcdefg"
    for (index, value) in str.enumerated() {
        print("\(index) --- \(value)")
    }
    
    • 大写或小写
    let str = "abcdefg"
    print(str.lowercased())  //全部小写
    print(str.uppercased())  //全部大写
    
    • 含有字符串
    let str = "abcdefg"
    print(str.contains("cd"))   //true
    print(str.contains("c"))    //true
    print(str.contains("o"))    //false
    
    • 串分割
    import Foundation
    let str = "abcdefg$$aaaa$$bbbb$$ccc"
    let desc = str.components(separatedBy: "$$")
    for item in desc {
        print(item)
    }
    
    • 替换
    import Foundation
    let str = "abcdefg$$aaaa$$bbbb$$ccc"
    let dest11 = str.replacingOccurrences(of: "$$", with: "**")
    print(dest11)
    
    • 子串
    let str = "Hello World"
    //截取某字符串的前5个字符串
    let sub1 = str.prefix(5)
    //截取某字符串的后5个字符串
    let str1 = str.suffix(5)
    
    //也可以换种写法
    let index2 = str.index(str.endIndex, offsetBy: -5)
    let sub2 = str[index2..<str.endIndex]
    //截取某字符串的第3个字符到第6个字符范围的字符串
    let index3 = str.index(str.startIndex, offsetBy: 3)
    let sub3 = str[str.startIndex..<index3]
    
    let index4: String.Index = str.index(str.endIndex, offsetBy: -3)
    
    //从某个位置开始 到某个位置结束
    let sub4 = str[index3..<index4]
    

    相关文章

      网友评论

        本文标题:8.Swift学习之字符串

        本文链接:https://www.haomeiwen.com/subject/xnikoftx.html