簡單的數據去重,和謂詞使用


  //去除重復
    NSOrderedSet *orderedSet = [NSOrderedSet orderedSetWithArray:sectionArray];
    self.sections = [[orderedSet array] mutableCopy];
    
    //把所有的通知匯總后分類
    NSMutableArray *allNotices = [NSMutableArray array];
    for (NSArray *notices in self.noticeArray) {
        [allNotices addObjectsFromArray:notices];
    }
    [allNotices addObjectsFromArray:notices];
    
    /// 賦值完后刪除重新添加
    [self.noticeArray removeAllObjects];
    
    for (NSString *date in self.sections) {
        NSPredicate *predicate = [NSPredicate predicateWithFormat:@"noticeDate == %@",date];
  
        NSArray *dayNotices = [allNotices filteredArrayUsingPredicate:predicate];
        NSArray *sortedNotices = [dayNotices sortedArrayUsingComparator:^NSComparisonResult(id  _Nonnull obj1, id  _Nonnull obj2) {
            
            YHHomeFindNotice *notice1 = obj1;
            YHHomeFindNotice *notice2 = obj2;
            if ( notice1.timeString < notice2.timeString ) {
                return (NSComparisonResult)NSOrderedDescending;
            } else if ( notice1.timeString > notice2.timeString) {
                return (NSComparisonResult)NSOrderedAscending;
            }
            return (NSComparisonResult)NSOrderedSame;
            
        }];
        
        [self.noticeArray addObject:sortedNotices];
    }
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容