int x = 13; double y = 10/3;
In above C code example, primitive values 13 and 10/3 are literals. As Objective-C is a superset of C, valid codes in C are also valid in Objective-C. But in iOS application development environment, object types provide from iOS SDK are being use for literal values instead of primitive data types.
NSString *greeting = @"Hello";
In the above code, @”Hello” is an String type Object literal. Without using @ sign and will be something like this
NSString *greeting = [NSString stringWithUTF8String:"Hello"];
So, the use of that @ sign for object literals are more clear and easy to readable. I think everyone use that literals instead of traditional initialising data type objects.
Here are some examples of object literals. They can also use in Numeric Types, Collection and in Dictionary.
Data Types : Traditional
NSNumber *boolYES = [NSNumber numberWithBool:YES]; NSNumber *boolNO = [NSNumber numberWithBool:NO]; NSNumber *charX = [NSNumber numberWithChar:'X']; NSNumber *fortySevenInt = [NSNumber numberWithInt:47]; NSNumber *fortySevenUnsigned = [NSNumber numberWithUnsignedInt:47U]; NSNumber *fortySevenLong = [NSNumber numberWithLong:47L]; NSNumber *goldenRatioFloat = [NSNumber numberWithFloat:1.61803F]; NSNumber *goldenRatioDouble = [NSNumber numberWithDouble:1.61803];
NSNumber *boolYES = @YES; NSNumber *boolNO = @NO; NSNumber *charX = @'X'; NSNumber *fortySevenInt = @47; NSNumber *fortySevenUnsigned = @47U; NSNumber *fortySevenLong = @47L; NSNumber *goldenRatioFloat = @1.61803F; NSNumber *goldenRatioDouble = @1.61803;
NSArray *instruments = [NSArray arrayWithObjects: @"Ocarina", @"Flute", @"Harp", nil];
NSArray *instruments = @[ @"Ocarina", @"Flute", @"Harp" ];
NSMutableArray *instrumentsMutable = [ @[ @"Ocarina", @"Flute", @"Harp" ] mutableCopy];
Dictionary : Traditional
NSArray *keys = [NSArray arrayWithObjects:@"Character", @"Weapon", @"Hitpoints", nil]; NSArray *objects = [NSArray arrayWithObjects:@"Zelda", @"Sword", [NSNumber numberWithInt:50], nil]; NSDictionary *stats = [NSDictionary dictionaryWithObjects:objects forKeys:keys];
Dictionary : Literals
NSDictionary *stats = @{ @"Character" : @"Zelda", @"Weapon" : @"Sword", @"Hitpoints" : @50 };
what are the considerations when purchasing used metal cabinets? visit our : telkom university