-1

这是通过 TFHpple 加载一些元素的方法中的一段代码:

// kvota1Niz, KvotaxNiz and Kvota2Niz are result arrays from TFHpple parser
NSArray *kvota1Niz = [kvoteParser searchWithXPathQuery:kvota1XpathUpit];
NSArray *kvotaxNiz = [kvoteParser searchWithXPathQuery:kvotaxXpathUpit];
NSArray *kvota2Niz = [kvoteParser searchWithXPathQuery:kvota2XpathUpit];
NSMutableArray *kvote1 = [[NSMutableArray alloc] initWithCapacity:0];
NSMutableArray *kvotex = [[NSMutableArray alloc] initWithCapacity:0];
NSMutableArray *kvote2 = [[NSMutableArray alloc] initWithCapacity:0];
NSMutableArray *privremeniArray = [[NSMutableArray alloc] initWithCapacity:0];
for (TFHppleElement *element in kvota1Niz)
{
    Par *trenutnaKvota1 =  [[Par alloc] init];
    [kvote1 addObject:trenutnaKvota1];
    trenutnaKvota.kvota1 = [[element firstChild] content];
}
for (TFHppleElement *element in kvotaxNiz)
{
    Par *trenutnaKvotax =  [[Par alloc] init];

    if ([_sekvencaLogoa objectAtIndex: [kvotaxNiz indexOfObject:element]] == @"2")
    {
        [privremeniArray addObject:trenutnaKvotaX]
    }
    else
    {
        [kvotex addObject:trenutnaKvotax];
    }
    trenutnaKvota.kvotax = [[element firstChild] content];
}
for (TFHppleElement *element in kvota2Niz)
{
    Par *trenutnaKvota2 =  [[Par alloc] init];
    if ([_sekvencaLogoa objectAtIndex: [kvota2Niz indexOfObject:element]] == @"2")
    {
        [kvote2 addObject:[privremeniArray objectAtIndex:k]];
        k++;
    }
    else
    {
        [kvote2 addObject:trenutnaKvota2];
    }
    trenutnaKvota.kvota2 = [[element firstChild] content];
}
kvota1 = _kvota1;
kvotax = _kvotax;
kvota2 = _kvota2;

问题在于未保存在数组for(TFHppleElement *element in kvota2Niz)中的位置。程序进入 for 循环,因为我的 value 。 是类的实例变量。 是一个包含字符串和的数组。[privremeniArray objectAtIndex:k]kvote2NSLoggedkkvota2NSStringPar_sekvencaLogoa"2""3"

有任何想法吗?

4

1 回答 1

2

这不是正确的字符串比较

 if ([_sekvencaLogoa objectAtIndex: [kvota2Niz indexOfObject:element]] == @"2")
        {
            [kvote2 addObject:[privremeniArray objectAtIndex:k]];
            k++;
        }

用这个:

 if ([[_sekvencaLogoa objectAtIndex: [kvota2Niz indexOfObject:element]] isEqualToString:@"2"])
        {
            [kvote2 addObject:[privremeniArray objectAtIndex:k]];
            k++;
        }
于 2012-08-10T08:14:29.570 回答