Swift

时间:2015-11-04 18:51:33

标签: swift

如何在Swift中使用Mutable Strongly Type数组?我正在将ShoppingList对象添加到数组中,如下所示:

 func getAllShoppingLists() -> Array<ShoppingList> {

        let shoppingLists = Array<ShoppingList>()

        db.open()

        let results = try! db.executeQuery("SELECT * from ShoppingLists", values: nil)

        defer {

            db.close()
        }

        while(results.next()) {

            let shoppingList = ShoppingList()
            shoppingList.title = results.stringForColumn("title")

            shoppingLists.append(shoppingList)
        }

        return shoppingLists
    }

问题在于,shoppingLists被声明为“let”。如果我改为“var”,它可以正常工作。当然,原因是我正在改变数组中的项目数。这是最好的方式吗?

2 个答案:

答案 0 :(得分:1)

这是使数组变为可变的唯一方法,要理解let和var之间的区别,请参阅这篇文章,因为答案会详细解释。

What is the difference between `let` and `var` in swift?

答案 1 :(得分:0)

您可以创建此代码,

var shoppingArray = [ShoppingList]()
shoppingArray.append(yourInstance)