按值过滤 NSMutableArray 数据到 Swift 中的对象
Filter NSMutableArray data by value into object in Swift
我有这个问题
我在 iOS 9 的项目中使用 Swift 2.0。我创建了一个这样的对象:
public class element_x: NSObject{
var name: String!
var description_element: String!
}
因此,在一个方法中,我声明了两个 NSMutableArray:1) 用于所有数据,2) 用于过滤数据,如下所示:
var original = NSMutableArray()
var filtered = NSMutableArray()
在这个过程中,我像这样填充这个 NSMutableArray:
let custom_object = element_x()
self.original.addObject(custom_object);
我的问题是:如何按名称值过滤原始数组并保存在过滤后的数组中?
您不必使用 NSMutableArray
。 Swift 中的原生 Array
类型非常有能力。您可以使用 var
(相当于 NSMutableArray
)声明它是可变的,或者使用 let
(与 NSArray
相同)声明为常量:
public class element_x: NSObject{
var name: String!
var description_element: String!
}
// Declare an array containing elements of element_x type
var original = [element_x]()
var filtered = [elememt_x]()
let custom_object = element_x()
self.original.append(custom_object)
// Find all elements with name == "david"
self.filtered = self.original.filter { [=10=].name == "david" }
我有这个问题
我在 iOS 9 的项目中使用 Swift 2.0。我创建了一个这样的对象:
public class element_x: NSObject{
var name: String!
var description_element: String!
}
因此,在一个方法中,我声明了两个 NSMutableArray:1) 用于所有数据,2) 用于过滤数据,如下所示:
var original = NSMutableArray()
var filtered = NSMutableArray()
在这个过程中,我像这样填充这个 NSMutableArray:
let custom_object = element_x()
self.original.addObject(custom_object);
我的问题是:如何按名称值过滤原始数组并保存在过滤后的数组中?
您不必使用 NSMutableArray
。 Swift 中的原生 Array
类型非常有能力。您可以使用 var
(相当于 NSMutableArray
)声明它是可变的,或者使用 let
(与 NSArray
相同)声明为常量:
public class element_x: NSObject{
var name: String!
var description_element: String!
}
// Declare an array containing elements of element_x type
var original = [element_x]()
var filtered = [elememt_x]()
let custom_object = element_x()
self.original.append(custom_object)
// Find all elements with name == "david"
self.filtered = self.original.filter { [=10=].name == "david" }