我已经解析了存储在NSObject文件中的数据。然后我将目标文件存储在一个数组中:
[array addobject: object];
当我打印数组时,它只包含第一个对象值。
我全局声明了数组,为它分配了内存并为对象分配了内存。
它是这样打印的:
数组计数 2 和数组是:
(
"about 1st orders",
"about 2nd orders"
)
类是__NSArrayM
以前它可以正确存储整个对象。
有什么想法或建议可以解决这个问题吗?
我已经解析了存储在NSObject文件中的数据。然后我将目标文件存储在一个数组中:
[array addobject: object];
当我打印数组时,它只包含第一个对象值。
我全局声明了数组,为它分配了内存并为对象分配了内存。
它是这样打印的:
数组计数 2 和数组是:
(
"about 1st orders",
"about 2nd orders"
)
类是__NSArrayM
以前它可以正确存储整个对象。
有什么想法或建议可以解决这个问题吗?
以下是为您描述的逻辑,可能对您有所帮助。
首先创建一个类(名称随心所欲)
#import <Foundation/Foundation.h>
@interface MyClassName : NSObject {
NSString *name; // set as per your requirement.
NSString *address; // set as per your requirement.
.
.
.
}
@property (retain, readwrite) NSString * name;
@property (retain, readwrite) NSString * address;
.
.
.
并正确@synthesize发布参考。(如果不使用ARC)
然后在这个类对象中添加你的数组然后获取数据,比如,
编辑:
NSMutableArray *anOtherArray = [[NSMutableArray alloc] init];
for(int i=0; i < listOfArray.count; i++)
{
MyClassName *myData = [self.listOfArray objectAtIndex:i];
NSLog(@"%@", myData.name);
NSLog(@"%@", myData.address);
[anOtherArray addObject:myData.name];
[anOtherArray addObject:myData.address];
}
Here is what i usually do when putting objects into array :
#import <Foundation/Foundation.h>
@interface ImageObject : NSObject
{
NSString *ImageURL;
NSString *Date;
// put any other stuff here.
}
@property (nonatomic, strong) NSString *ImageURL;
@property (nonatomic, strong) NSString *Date;
// put any other stuff here too.
@end
Then when you want to insert the object :
NSMutableArray *yourMutableArray = [[NSMutableArray alloc]init];
NSArray *array = [[NSArray alloc]initWithArray:[self.imageDictionary objectForKey:@"images"]];
for (NSDictionary *dict in array) {
ImageObject *imgObj = [[ImageObject alloc]init];
imgObj.ImageURL = [dict objectForKey:@"ImageURL"];
imgObj.Date = [dict objectForKey:@"LogDate"];
[yourMutableArray addObject:imgObj];
}
and for calling the items inside the array :
ImageObject *imgObj = [[ImageObject alloc]init];
imgObj = [yourMutableArray objectAtIndex:indexOfArray];
您存储在 中的对象的定义是什么NSArray?对于存储在数组中的自定义对象,您应该覆盖 NSObject 的isEqual方法。
对于存储在地图中的自定义对象,例如NSDictionary,您也需要实现hashcode。