【问题标题】:How to filter data in NSMutableArray that contains NSArray as an object如何过滤包含 NSArray 作为对象的 NSMutableArray 中的数据
【发布时间】:2016-06-24 05:44:29
【问题描述】:

我想从NSMutableArray 中过滤包含NSArray 作为对象的数据。下面是我用于设置对象的代码-

[self setFieldType];
NSMutableArray *kirtanList=[[NSMutableArray alloc] init];
NSString *sql = [NSString stringWithFormat:@"SELECT Id,%@ FROM Kirtan_list  where Title_Eng like '%@%%' or Title_Eng like '%%%@%%' order by Title_Eng", titleField, text,text];
sqlite3_stmt * statement;

if(sqlite3_prepare_v2(db, [sql UTF8String], -1, &statement, nil) == SQLITE_OK)
{

    while(sqlite3_step(statement) == SQLITE_ROW)
    {
        char *field1 = (char *) sqlite3_column_text(statement, 0);
        NSString *field1Str = [[NSString alloc] initWithUTF8String:field1];
        char *field2 = (char *) sqlite3_column_text(statement, 1);
        NSString *field2Str = [[NSString alloc] initWithUTF8String:field2];
        NSArray *data=[NSArray arrayWithObjects:[NSString stringWithFormat:@"%@",field1Str],[NSString stringWithFormat:@"%@",field2Str],nil ];
        [kirtanList addObject:data];
    }
}else{
    NSLog(@"Filtered row error ");
}

帮我过滤数据。

【问题讨论】:

  • 使用[object1 isKindOfClass:[NSArray class]]检测类的类型
  • 你想在什么条件下过滤数据?
  • 将 NSPredicate 与甲酸盐一起使用,例如 NSPredicate * predicate = [NSPredicate predicateWithFormat:@"AnyName BEGINSWITH[cd] %@",_textField.text];
  • 链接上面没用

标签: ios objective-c nsmutablearray


【解决方案1】:

通过这段代码解决这个问题

 NSPredicate * predicate = [NSPredicate predicateWithFormat:@"ANY SELF BEGINSWITH[cd] %@",_textField.text];

【讨论】:

    【解决方案2】:
    NSMutableArray *marrObject=[[NSMutableArray alloc] init]; //Declare Array Object
    
    //Loop for find array objects
    for (id arrObject in marrObject) {
    
        if ([arrObject isKindOfClass:[NSArray class]]) {
    
            NSLog(@"It's Array Object");
        }
    } 
    

    【讨论】:

    • 问题是要过滤 NSArray 对象,我这样做了。而且我不可能编写整个代码来描述有关 sqlite 的问题。找到 NSArray 对象后,他可以做进一步的处理。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-07
    • 1970-01-01
    • 2011-11-18
    • 1970-01-01
    相关资源
    最近更新 更多