美文网首页
Swift字符串

Swift字符串

作者: iOS_July | 来源:发表于2018-06-26 17:12 被阅读17次

一、字符串的介绍

  • OC和Swift中字符串的区别:
1> 在OC中字符串类型时NSString,在Swift中字符串类型是String
2> OC中字符串@"",Swift中字符串""
  • 使用String的原因:
1> String 是一个结构体、性能更高
2> NSString 是一个 OC 对象、性能略差
3> String 支持直接遍历
4> Swift 提供了 String 和 NSString 之间的无缝转换

二、字符的定义

  • 定义不可变字符串
  • 定义可变字符串
func setupString() {
    
    let str1: String = "不可变字符串"
    
    var str2: String = "可变字符串"
    str2 = "变一下"
    
    print("\(str1)---\(str2)")
}

三、字符串的使用

  • 获取字符串的长度[获取字符串集合,再获取集合的count集合]
func setupString() {
    
    let str1: String = "不可变字符串"
    
    var str2: String = "可变字符串"
    str2 = "变一下"
    
    print("\(str1)---\(str2)")
    
    let count1 = str1.characters.count
    let count2 = str2.unicodeScalars.count
    
    // 用类型转换 as ,转为NSString
    let ocStr = str2 as NSString
        
        
     print("\(count1)---\(count2)---\(ocStr.length)")
    
}
  • 字符串拼接[直接相加] 还要注意可选项Optional!
    print("str1+str2=\(str1+str2) \(可选项 ?? "")")

  • 字符串拼接过程中的格式化 3分04秒=03:04

let min = 3
let second = 4
let time = String(format: "%02d:%02d", min, second)
  • 字符串的截取
    let urlStr = "www.baidu.com"
  • 将String类型转成NSString类型,再进行截取: as NSString
let header1 = (urlStr as NSString).substring(to: 3)
let range1 = NSMakeRange(4, 5)
let middle1 = (urlStr as NSString).substring(with: range1)
let footer1 = (urlStr as NSString).substring(from: 10)
  • 直接使用String类型方法,进行截取
let headerIndex = urlStr.index(urlStr.startIndex, offsetBy: 3)
let header2 = urlStr.substring(to: headerIndex)

let startIndex = urlStr.index(urlStr.startIndex, offsetBy: 4)
let endIndex = urlStr.index(urlStr.startIndex, offsetBy: 9)
let range2 = Range(startIndex..<endIndex)
let middle2 = urlStr.substring(with: range2)

let footerIndex = urlStr.index(urlStr.endIndex, offsetBy: -3)
let footer2 = urlStr.substring(from: footerIndex)
  • 字符串的遍历
//字符串的遍历
    func demoSting() -> () {
        
        let str = "今天天气真好"
        
        for c in str.characters {
            print(c)
        }
    }

相关文章

网友评论

      本文标题:Swift字符串

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