Обработка нескольких строк и целых чисел в массиве - PullRequest
0 голосов
/ 24 сентября 2011

Я пытаюсь создать приложение, в котором у меня есть массив (?), Который содержит имя и другую информацию (2 строки, 3 дюйма) пользователя. Я также хочу, чтобы пользователь указал, сколько имен может содержать приложение.

Мне было интересно, как именно я это сделал? Мне было интересно, могу ли я использовать многомерный массив.

Спасибо

Ответы [ 4 ]

4 голосов
/ 24 сентября 2011

Похоже, что вы хотите, это класс User, со свойствами каждого пользователя и массивом из них.

1 голос
/ 25 сентября 2011

Как указывалось ранее, вам лучше всего добавить класс для хранения информации, а затем добавить каждый объект в NSArray (вот пример):

@interface User : NSObject
{
  NSString *string1;
  NSString *string2;
  int int1;
  int int2;
  int int3;
}

@property (nonatomic, retain) NSString *string1;
@property (nonatomic, retain) NSString *string2;
@property (nonatomic) int int1;
@property (nonatomic) int int2;
@property (nonatomic) int int3;

@end

@implementation User

@synthesize string1, string2, int1, int2, int3;

// Add init and dealloc methods here

@end

// creating objects somewhere else in the code
User *userObj1 = [[User alloc] init];
User *userObj2 = [[User alloc] init];
userObj1.string1 = @"User1";
userObj1.int1 = 7;

NSArray *arrayOfUserObjects = 
  [[NSArray alloc] initWithObjects: userObj1, userObj2, nil];
[userObj1 release];
[userObj2 release];

// do stuff with array with User Objects
1 голос
/ 24 сентября 2011

Вы можете использовать NSMutableArray, который содержит NSDictionaries элементов.

NSMutableArray *array = [NSMutableArray array];

NSString *name = @"Name ";
NSString *value1 = @"Value 1";
int       value2 = 2;
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:
                      name, @"name",
                      value1, @"value1Name",
                      [NSNumber numberWithInt:value2], @"value2Name",
                      nil];
[array addObject: dict];

// Создаем больше словарей по мере появления новых элементов и добавляем их в массив

0 голосов
/ 25 сентября 2011

Да, либо пользовательский класс, либо словарь. Или вместо словаря вы можете иметь другой массив, если хотите. С NSArray вы можете иметь любой другой объект Objective C в качестве элементов, включая другие NSArrays, NSDictionarys или объекты вашего собственного пользовательского класса. (Вы можете сделать то же самое с массивом указателей NSObject, но NSArray прекрасно обрабатывает сохранение для вас.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...