Swift 从领域查询返回特定结果

Swift 从领域查询返回特定结果,swift,realm,Swift,Realm,我正在使用领域来保存动物的数据条目。每个动物条目都有一个类型、重量和颜色。我想说的是,如果一种动物的类型等于猴子,那么就返回猴子的体重 class Animal: Object { dynamic var type = "" dynamic var weight = 0.0 dynamic var color = "" } let animalResults = Realm(path: Realm.defaultPath).objects(Animal) 我相信我需要过滤并

我正在使用领域来保存动物的数据条目。每个动物条目都有一个类型、重量和颜色。我想说的是,如果一种动物的类型等于猴子,那么就返回猴子的体重

class Animal: Object {
   dynamic var type = ""
   dynamic var weight = 0.0
   dynamic var color = ""
}

let animalResults = Realm(path: Realm.defaultPath).objects(Animal)

我相信我需要过滤并映射结果,但我不确定如何使用领域对象进行过滤。

您可以使用过滤方法链接到结果。如果只想检索猴子类型的动物,请执行以下操作:

let monkeys = Realm().objects(Animal).filter("type == %@", "monkey")
如果你想收集猴子的体重,你可以使用
map
函数来计算结果

let weightOfMonkeys = map(monkeys) { $0.weight }