我有这个问题
我在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);
我的问题是:如何按名称值过滤原始数组并保存在已过滤的数组中?
答案 0 :(得分:1)
您不必使用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 { $0.name == "david" }