Этот класс является одним из самых странных дополнений в языке Objective-C. Для обработки числовых типов достаточно внутренних функций и методов. Единственная, как бы, цель класса NSNumber это обработка объектов NSArray, который хранит в себе только объекты.
Инициализация объекта NSNumber
Суть такова, что основные методы инициализации начинаются одинаково, но отличаются лишь конечным типом числа, т.е. что имеется в виду:
numberWith<Unsigned><Type>
Исходя из этого полное имя метода, для определенного типа числа, выглядит так:
numberWithBool
numberWithChar
numberWithDouble
numberWithFloat
numberWithInt
numberWithInteger
numberWithLong
numberWithLongLong
numberWithShort
numberWithUnsignedChar
numberWithUnsignedInt
numberWithUnsignedInteger
numberWithUnsignedLong
numberWithUnsignedLongLong
numberWithUnsignedShort
Например:
NSNumber...
Показаны сообщения с ярлыком NSNumber. Показать все сообщения
Показаны сообщения с ярлыком NSNumber. Показать все сообщения
9 апр. 2014 г.
6 апр. 2014 г.
Определение объема HDD и оставшегося свободного места
Определение объема HDD и оставшегося свободного места
//get startup disk total size+(NSNumber *)getDiskTotalSize{ NSDictionary *attr = [[NSFileManager defaultManager] attributesOfFileSystemForPath:@"/" error:nil]; return [attr objectForKey:NSFileSystemSize];}//get startup disk's free size+(NSNumber *)getDiskAvailableSize{ NSDictionary *attr = [[NSFileManager defaultManager] attributesOfFileSystemForPath:@"/" error:nil]; return [attr objectForKey:NSFileS...
20 мар. 2014 г.
Добавление числа в массив / Add number to Array
Обычно в массив типа NSArray или NSMutableArray нельзя добавить простое число или структуру, а только объект. Значит (в нашем примере) преобразуем наше простое число (например int) в объект. Число можно преобразовать как с помощью NSString, так и с помощью NSNumber.
NSMutableArray *myArray = [NSMutableArray arrayWithCapacity:30]; // должен быть мутабельным
for (int x = 0; x < 30; x++) {
// добавить как NSString
[myArray addObject:[NSString stringWithFormat:@"%d", x]];
// добавить как NSNumber
[myArray addObject:[NSNumber...
19 мар. 2014 г.
Как хранить BOOL - переменную как NSNumber
Создать NSNumber - переменную с булевой можно таким способом:
BOOL myBool = YES;
NSNumber *boolNumber = [NSNumber numberWithBool:myBool];
NSLog(@"boolNumber is %@", boolNumber); // выдаст 1 для YES и 0 для NO
Технически это аналог инициализации NSNumber с помощью литералов @1 и @0
И обратная операция с NSNumber в BOOL:
BOOL anotherBool = [NSNumber numberWithBool:YES];
NSLog(@"anotherBool is %i", anotherBool); // выдаст 1 для YES и 0 для N...