• swift 数组


    swift的数组是存放数据,相对object-c而言,swift更简单,对数组的元素的属性更加弱化,不需要强制数组元素是对象

    数组的定义

    //定义不可变数组
    let arrt = ["a","b",1,[2,"l"]]
    //定义可变数组
    var arr = ["a","b",1,[2,"l"]]

    数组的长度

    //数组的长度 用 count
    var arr = ["a","b",1,[2,"l"]]
    let length = arr.count
    print("length = (length)")
    //打印结果
     length = 4

    创建空数组

    //创建空数组 -- 直接定义
    var arr1 = []
    //规定数组元素的的类型,与swift1 的写法有所不同  这块需注意
    var arr2 = [String]()

    创建一个给定的大小,并用初始值的数组

    var arr = [String](count: 4, repeatedValue: "s")
    
    print("arr = (arr)")
    
    //打印结果为:
    arr = ["s", "s", "s", "s"]
    //创建一个有四个元素的数组,并指定四个值的数组:   
    var arr:[Int] = [1, 2, 3,4]
    
    print("arr = (arr)")
    //打印结果为:
    arr = [1, 2, 3, 4]

    ** 注意:
    当赋值与规定的类型不符时程序就会报错

    数组的取值

    //直接通过下标取值  这和 oc一样
    var arr:[Int] = [1, 2, 3,4]
    var someObj = arr[1]
    print("someObj = (someObj)")
    //打印结果为:
    someObj = 2

    数组添加元素

    //一种是使用 append() 方法  一种是直接赋值(+=)
    var arr = [String]()
    
    arr.append("a")
    arr.append("b")
    arr += ["cde"]
    
    
    print( "arr ==  (arr)" )
    print( "arr 第一个元素 ==  (arr[0])" )
    print( "arr 第二个元素 ==  (arr[1])" )
    print( "arr 第三个元素 ==  (arr[2])" )
    
    //打印结果是:
    arr ==  ["a", "b", "cde"]
    arr 第一个元素 ==  a
    arr 第二个元素 ==  b
    arr 第三个元素 ==  cde

    数组元素的修改

    //通过索引修改数组的值:
    
    var arr = [1,2,"s","c"]
    
    arr[1] = "g"
    
    print( "arr 第二个元素 ==  (arr)" )
    
    //打印结果是:
    arr 第二个元素 ==  [1, g, s, c]

    数组的遍历

    //使用 for-in
    
    var arr = [String]()
    
    arr.append("one")
    arr.append("two")
    arr += ["three"]
    
    for element in arr {
        print(element)
    }
    
    //运行结果
    one
    two
    three
    
    //使用 EnumerateSequence() 函数:
    for (index, element) in EnumerateSequence(arr) {
        print("arr[(index)] = (element)")
    }
    //运行结果
    arr[0] = one
    arr[1] = two
    arr[2] = three

     //swift3.0之后 用EnumerateSequence替代了enumerate

    //数组   for in
    var arr = [String]()
    for index in 0...5{
        arr.append("(index)")
    }
    print("arr = (arr)")
    //打印结果
    arr = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]
    
    
    //数组的遍历 while
    var i = 0
    while i < arr.count{
        print(arr[i])
        i += 1
    }
    //打印结果
    0
    1
    2
    3
    4
    5
    注意 :i++ 在swift3 之后 更推荐使用  i += 1

    数组的拼接

    //两个类型相同的数组可以相加
    
    var arr1 = [Int](count:3, repeatedValue: 2)
    var arr2 = [Int](count:3, repeatedValue: 1)
    
    var arrAdd = arr1 + arr2
    
    for item in arrAdd {
        print(item)
    }
    //打印结果为:
    2
    2
    2
    1
    1
    1

    空属性

    //空属性(isEmpty)判断一个数组是否为空:
    
    var arr = [Int]()
    
    if arr.isEmpty{
        print("arr 为空")
    }else{
        print("arr 不为空")
    }
    //打印结果为:
    arr 为空

     ** 注意:此处的数组不能是 var arr = [] 这样定义,这样isEmpty系统会报错

  • 相关阅读:
    acwing 116. 飞行员兄弟
    leetcode 1041. 困于环中的机器人
    acwing 110 防晒
    acwing 167. 木棒
    AcWing 166. 数独
    solr4.7新建core
    solr4.7新建core
    Solr4.7从文件创建索引
    Solr4.7从文件创建索引
    Solr4.7从文件创建索引
  • 原文地址:https://www.cnblogs.com/carlos-mm/p/5357829.html
Copyright © 2020-2023  润新知