代码之家  ›  专栏  ›  技术社区  ›  4thSpace wkw

如何表示数组中的对象?

  •  1
  • 4thSpace wkw  · 技术社区  · 14 年前

    我有以下数组,它是从JSON结果中检索到的:

    <NSCFArray 0x196e3e0>(  
    {  
    NameID = 3;  
    Name = test1;  
    },  
    {  
    NameID = 6;  
    Name = test2;  
    }  
    )
    

    我想通过TableView遍历每个对象,并将其值赋给自定义TableView单元格中的标签。如何在每次迭代中访问名称ID和名称?我需要创建一个具有这两个属性的类并从数组中分配给它吗?

    2 回复  |  直到 14 年前
        1
  •  4
  •   stefanB    14 年前

    假设数组类似于:

    NSArray * array = [NSArray arrayWithObjects:
        [NSDictionary dictionaryWithObjectsAndKeys:
            [NSNumber numberWithInt:3], @"NameID", @"test1", @"Name", nil],
        [NSDictionary dictionaryWithObjectsAndKeys:
            [NSNumber numberWithInt:6], @"NameID", @"test2", @"Name", nil],
        nil];
    

    您可以这样迭代:

    NSEnumerator *enumerator = [array objectEnumerator];
    id obj;
    while ((obj = [enumerator nextObject]))
    {
        NSLog(@"NameID:[%@]; Name:[%@]",
            [obj objectForKey:@"NameID"],
            [obj objectForKey:@"Name"]);
    }
    

    输出:

    2010-02-04 11:41:53.266 x[8739] NameID:[3]; Name:[test1]
    2010-02-04 11:41:53.267 x[8739] NameID:[6]; Name:[test2]
    
        2
  •  1
  •   CiNN    14 年前

    它是一个nsdictionary数组,所以只需遍历数组并强制转换到nsdictionary,然后请求键来获取值。