2019-12-18 16:02:30 Mayxc 阅读数 23

业务需求:

修改给定数组中模型的值

在OC中,遍历查找,然后直接修改model就行了(地址未变)

在swift中,遍历出来的已经是新的对象(地址变了),所以修改后数组并没有修改值

import UIKit

var arr:[Int] = [1,2,3]

print(arr)


func dealDate (paramete:inout Int){
    paramete+=1
}

for var (index,i) in arr.enumerated() {
    if i == 2 {
        dealDate(paramete: &arr[index])
        print(i)
    }
}


print(arr)

输出结果:

[1, 2, 3]
2
[1, 3, 3]

inout 关键字,传入对象地址,方便修改

 

2015-11-09 20:52:00 qq_32774515 阅读数 53

swift 遍历

 

 

最简单的一个遍历数组

for 随便起个名字 in

升级

上面的看不懂的话,这个应该会简单点

 

 

import UIKit
let interestingNumbers = [
    "prime": [2,3,5,6,11,13],
    "prime1": [1,1,2,3,5,8],
    "prime2": [1,4,9,16,25],
]
var largest = 0
for (kind,numbers) in interestingNumbers {
    for number in numbers {
        if number > largest {
            largest = number
        }
    }
}
print(largest)

//////////////////////////
let hehe = [1:[22,33],2:[12,32]]
var xx = 0
for (name,array) in hehe {
    for number in array {
        print(number)
    }
}
////////////////////////

var intArray = [1,23,4,5]
for int in intArray {
    print(int)
}

 

posted on 2015-11-09 20:52 Zing_Z 阅读(...) 评论(...) 编辑 收藏

2015-08-19 14:26:42 CHENYUFENG1991 阅读数 11286

      Array是Swift中的数组数据类型,而NSArray是OC中的数组数据类型,两者有区别有联系。在Swift中有时候难免会使用到OC中的一些东西,今天我们就来Swift中使用NSArray和Array,并且进行转化。

(1)声明一个Array数组,并进行遍历,代码如下:

    let stringArray: Array<String> = ["10", "20","30","40","50"]
        for index in stringArray{
        
            println(index)
        }
        

输出结果如下:

使用Swift遍历Array数组没有任何问题,可以使用for...in循环。


(2)声明一个NSArray数组,并进行遍历,代码如下:

     let stringNSArray: NSArray = ["10", "20","30","40","50"]
        
        for index in stringNSArray{
        
            println(index)
        }

输出结果如下:

可见NSArray数组也可以在Swift中直接进行声明并进行遍历。


(3)声明一个NSArray数组,转化为Array数组,再进行遍历:

   let stringNSArray: NSArray = ["10", "20","30","40","50"]
        let stringArray:[String] = stringNSArray as! [String]
        
        for index in stringArray{
        
            println(index)
        }

输出结果如下:


可见NSArray可以在类型转换后直接赋值给Array数组,然后也可以进行遍历。


(4)声明一个Array数组,转化为NSArray,再进行遍历:

     let stringArray: Array<String> = ["10", "20","30","40","50"]
        let stringNSArray:NSArray = stringArray
        for index in stringNSArray{
        
            println(index)
        }

输出结果如下:

可以看到Array数组也可以直接转化为NSArray,并进行遍历。             


      总结,Swift在数组方面Array很好的兼容了OC中的NSArray。可以直接进行赋值转换。


github主页:https://github.com/chenyufeng1991  。欢迎大家访问!














2015-10-26 19:53:37 u011171043 阅读数 296
1.数组的遍历,调用数组的enumerate方法

        var arr:Array = ["abc","def"];

        arr.insert("ght", atIndex:2);


1)整个元组进行遍历

        for begnin arr.enumerate() {

            print(begn);

        }

2)遍历下标和元素

        for (index,element)in arr.enumerate(){   

            print(index);

            print(element);

        }

        


2.数组copy

        var str4 = arr;

        

        print(str4);

        

        

        arr.removeLast();

        

        print(arr);

        

        print(str4);

        运行结果:arr变化,str4没有变化

        

2016-12-13 14:24:59 sinat_20037505 阅读数 1219

  let array = [1, 3, 4, 5, "", 78, 9,10] as [Any]

        

        for i in array {

            print("元素=\(i)")

        }

        


//        EnumeratedSequence

//        'enumerate' is unavailable: call the 'enumerate()' method on the sequence

//        for (index, value) in EnumeratedSequence(array)

//        {

//            // 这样子遍历,可以得到数组的值和下标

//            print("index:\(index) = \(value)")

//        }

        


        for (index, value) in array.enumerated()

        {

            // 这样子遍历,可以得到数组的值和下标

            print("index:\(index) = \(value)")

        }


Swift数组遍历

阅读数 78

swift 数组遍历

博文 来自: c_c123
没有更多推荐了,返回首页