Swift笔记---String、Array、 Dictionary

138 阅读1分钟

空格

  • 在Swift中,运算符不能直接跟在变量或常量的后面。

String

  • 字符串分割数组 -- 基于空格
    let fullName = "First Last"
    let fullNameArr = fullName.split(separator: " ")
    
    print(" \(fullNameArr[0]) lastName: \(fullNameArr[1])")
    
  • 字符串遍历
    let str = "测试测试ceshi"
    
    // 正序遍历
    for tmp in str {
        print("\(tmp)")
    }
    
    // 逆序遍历
    for tmp in str.reversed() {
        print("\(tmp)")
    }
    
    // 基于EnumeratedSequence的遍历
    for (i,ch) in str.enumerated() {
        print("\(i) + \(ch)")
    }
    
    
  • 字符串拼接
    str.append("test")
    

Array

  • 有序存储同一类型的多个值,不去重

  • 创建数组

    var someArray = [Int]()
    
    var someArray0: [Int] = []
    
    var someArray1 = [Int] (repeating: 0, count: 10)
    
    var someArray2: [Int] = [10, 20, 30]
    
  • 修改数组

    someArray.append(12)
    
    someArray += [40]
    
    someArray[1] = 0
    
  • 遍历数组

    for item in someArray {
        print(item)
    }
    
    // 根据索引和值遍历
    for (index, item) in someArray.enumerated() {
        print("\(index) : \(item)")
    }
    
  • 合并数组

    someArray = someArray1 + someArray2
    someArray.isEmpty //判断数组是否为空
    

Dictionary

  • 无序存储相通类型的数据

  • 创建字典

    var someDict = [String: Int] ()
    
    var someDict0: [Int: String] = [:]
    
    var someDict1: [Int: String] = [1: "one", 2: "two"]
    
  • 修改字典

    // 获取字典的值
    var someVar = someDict1[3]
    
    // key 不存在则添加值,key 存在则修改
    var oldVal = someDict.updateValue(12, forKey: "test")
    
    someDict["test0"] = 1
    
    // 如果key存在,则返回移除的值,不存在则返回nil
    var removedValue = someDict.removeValue(forKey: "test")
    
    someDict["test0"] = nil
    
  • 字典遍历

    for (key, value) in someDict {
        print("\(key) : \(value)")
    }
    
    // index 字典索引,value 是(key,value)对
    for (index, value) in someDict.enumerated() {
        print("\(index) : \(value)")
    }
    
  • 获取字典的keyvalue数组

    someDict.keys
    someDict.values