Подтвердить что ты не робот

Как я могу использовать целочисленное значение как "ключ" для установки значения в NSMutableDictionary?

Как я могу использовать целочисленное значение как "ключ" для установки значения float в NSMutableDictionary?

4b9b3361

Ответ 1

Поскольку NSDictionarys предназначены только для работы с объектами, простой способ сделать это - обернуть целое число и float в NSNumber объект. Например:

NSMutableDictionary *testDictionary = [[NSMutableDictionary alloc] init];
[testDictionary setObject:[NSNumber numberWithFloat:1.23f]
                   forKey:[NSNumber numberWithInt:1]];
NSLog(@"Test dictionary: %@", testDictionary);

[testDictionary release];

Чтобы извлечь соответствующее значение, просто используйте соответствующий метод intValue, floatValue и т.д. из класса NSNumber.

Ответ 2

Вы можете использовать NSMapTable, так как он поддерживает целые ключи и/или значения напрямую. Не нужно вставлять/распаковывать через NSNumber, но его также немного сложнее настроить и использовать.

Ответ 3

Он должен быть объектом, поэтому вместо него используйте [NSNumber numberWithInt:myInteger].

Затем верните его с помощью -integerValue