我如何从自定义对象中找到一个特定的项,在一个巨大的数组中,比如bellow?
struct ResponseCourseTypeFilter {
var returnCourseTypeFilter: [[String : String]]
}
struct ViewModelCourseTypeFilter {
struct DisplayedCourseTypeFilter {
var titlesCourseType: String
var isSelectedType: Bool
}
var displayedCourseTypeFilter: [DisplayedCourseTypeFilter]
}
我需要得到
titlesCourseType
是true
的值。我的
array
很大。 最佳答案
如果ViewModelCourseTypeFilter
实例是这样的,
let viewModel = ViewModelCourseTypeFilter(displayedCourseTypeFilter: [
DisplayedCourseTypeFilter(titlesCourseType: "First", isSelectedType: true),
DisplayedCourseTypeFilter(titlesCourseType: "Second", isSelectedType: false),
DisplayedCourseTypeFilter(titlesCourseType: "Third", isSelectedType: true)
])
然后你可以得到所有的
titlesCourseType
值,就像这样,let arr = viewModel.displayedCourseTypeFilter.compactMap({ $0.isSelectedType ? $0.titlesCourseType : nil })
print(arr) //["First", "Third"]