Swift学习 --- 2.4集合类型

11 篇文章 0 订阅

Swift 数组特定于它所存储元素的类型。这与 Objective-C 的 NSArray 和 NSMutableArray 不同,这两个类可以存储任意类型的对象,并且不提供所返回对象的任何特别信息。在 Swift 中,数据值在被存储进入某个数组之前类型必须明确,方法是通过显式的类型标注或类型推断,而且不是必须是class类型。


<span style="font-size:18px;">//1.构造数组,并赋值,只能构造字符串
        var arr: String[] = ["Eggs", "Milk"]
        
        //2.arr.count 可以求出数组的元素个数
        println(arr.count)
        
        //3.arr.isEmpty 可以检查数组是否为空
        
        //4.为数组追加元素
        arr.append("3")
        arr += "4" //也可以通过+=的方式追加
        arr += ["5","6"]//也可以追加一个数组

        //5.可以通过arr[1] 来取值,也可以赋值
        let a = arr[1]
        
        //6.可以利用下标来一次改变一系列数据值 注意1..3 是 1,2 ;1...3 是1,2,3
        arr[1..3] = ["0","1"]
        
        //7.插入数据
        arr.insert("zero", atIndex: 0)
        
        //8.删除数组里第一个元素,并赋值给mapleSyrup
        let mapleSyrup = arr.removeAtIndex(0)
        
        //9.数组的最后一项被移除了
        let apples = arr.removeLast()
        
        //10.遍历数组
        for item in arr {
            println(item)
        }
        
        //11.如果也需要遍历index 的时候可以用这个方法
        for ( index , value ) in enumerate(arr){
            println("index \(index) is " + value)
        }
        
        //12.声明一个空的int类型的数组
        var arrInt = Int[]()
        arrInt += 1
        arrInt += 2
        println(arrInt)
        
        //13.anotherThreeDoubles is inferred as Double[], and equals [2.5, 2.5, 2.5] 可以预加载一定的元素的数组,不能是nil
        var anotherThreeDoubles = Array(count: 3, repeatedValue: 1)


</span>

<span style="font-size:18px;">//声明了一个字典
        var dict = Dictionary<Int, String>()
        dict[1] = "12"
        
        //对字典来说,不可变性也意味着我们不能替换其中任何现有键所对应的值。不可变字典的内容在被首次设定之后不能更改。 不可变性对数组来说有一点不同,当然我们不能试着改变任何不可变数组的大小,但是我们可以重新设定相对现存索引所对应的值。这使得 Swift 数组在大小被固定的时候依然可以做的很棒。

//上点很重要,举例
        let letArr = [1,2,3]
        letArr[1] = 5
        println(letArr)
//        letArr = [1,2] error</span>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值