Here, We see Objective-C LinkedIn Skill Assessment Answer. This assessment test consists of 15-20 MCQs to demonstrate your knowledge of your selected skills. MCQs come from different topics – Classes, Collections, Functions, General, and Variables..
List of all LinkedIn Skills Assessment Answer
Objective-C LinkedIn Skill Assessment Answer
Q1. What is the value of s?
NSMutableString *s = [NSMutableString stringWithString: @"123"];
[s appendString: @"456"];
Code language: JavaScript (javascript)
- 123456✔
- 123
- 123
- 456
- This code contains an error.
Q2. What’s the value of i after these statements?
NSString *str = nil;
NSInteger i = str.integerValue;
- nil
- 0 (technically nil == 0 but i will have a literal value of 0 and not the void* value of nil)✔
- -1
- This code crashes.
Q3. What value is in str after this line is executed?
NSString str = "test" + " " + "more";
Code language: JavaScript (javascript)
- This code contains an error✔
- test
- nil
- test more
Q4. What is the output of the code given below?
NSPredicate *p2 = [NSPredicate predicateWithBlock:^BOOL(NSString* evaluatedObject, NSDictionary<NSString *,id> * _Nullable bindings) {
return evaluatedObject.intValue % 2 == 0;
}];
NSArray *vals = @[@"1", @"2", @"3"];
NSArray *n2 = [vals filteredArrayUsingPredicate:p2];
NSLog(@"%@", n2.firstObject);
Code language: JavaScript (javascript)
- 2✔
- 1,2,3
- 1,2
- Nothing, since this code contains an error.
Q5. Property defaults include _?
- atomic/strong✔
- atomic/weak
- nonatomic/weak
- nonatomic/strong
Q6. What is the key difference between NSDictionary and NSMutableDictionary?
- NSMutableDictionary’s values can change✔
- NSMutableDictionary has no initializers.
- NSDictionary can’t be copied.
- NSDictionary’s values can change.
Q7. What is foo?
-(float)foo;
- A function with a return type of float.✔
- This code contains an error.
- A variable declaration of type float.
- A property of type float.
Q8. What can you glean from this line?
#import "NSString+NameHelper.h"
Code language: CSS (css)
- NameHelper is a category of NSString.✔
- NameHelper is a subclass of NSString.
- NSString implements the NameHelper protocol.
- NSString has a helper class.
Q9. What’s wrong with this code?
float x = 5.;
- Nothing is wrong with this code.✔
- Declarations do not need semicolons.
- x=5 is an invalid float.
- Variables can’t be declared and initialized in the same state.
Q10. How many times with this loop be executed?
for (int x=0; x<100; x++) {
x = x + 1;
}
Code language: HTML, XML (xml)
- 50✔
- 99
- 100
- This code contains an error.
Q11. What is this code an example of?
[self addObserver: self forKeyPath: @"val" options:0 context: nil];
Code language: PHP (php)
- Key-Value Observing✔
- Class Value Observing
- Key-Data Observing
- KeyPath Observing
Q12. What does ARC stand for?
- Automatic Reference Counting✔
- Automatic Retain Checking
- Async Retain Cycles
- Automatic Release Code
Q13. What is printed for this code?
int val = 0;
val = 1.5;
printf("%d", val);
Code language: JavaScript (javascript)
- 1✔
- 2
- 0
- This code contains an error.
Q14. What best describes class inheritance in Objective-C?
- single inheritance but multiple protocol implementation✔
- Objective-C doesn’t support inheritance
- dual-class inheritance
- unlimited class inheritance and protocol adherence
Q15. How many keys does this NSDictionary have after this code is executed?
NSDictionary *dict = [[NSDictionary alloc] initWithObjectsAndKeys: @"b", @"e", @"a", @"r", nil];
Code language: JavaScript (javascript)
- 2✔
- 4
- 5
- This code contains an error.
Q16. What is the error in this code?
NSMutableDictionary *dict1 = [NSMutableDictionary dictionaryWithCapacity:5];
[dict1 setValue:@"key" forKey:@"value"];
Code language: JavaScript (javascript)
- The key and value items are mixed
- Nothing is wrong with it✔
- You can’t set the capacity of a dictionary
- NSMutableDictionary doesn’t have a :setValue:forKey function.
Q17. What is printed from this code?
NSData *data = [@"print" dataUsingEncoding:NSASCIIStringEncoding];
NSLog(@"%@", [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding]);
Code language: JavaScript (javascript)
- print✔
- This code is invalid
- Nothing is printed from this code.
- nil
Q18. What is different about this function?
+(void)doSomething;
Code language: JavaScript (javascript)
- It is static✔
- It is abstract.
- It is inline.
- This code contains an error.
Q19. Structs can have _?
- functions
- initializers
- fields✔
- all of these answers
Q20. What is wrong with this code?
@interface MyClass : NSObject
@property (strong, nonatomic, readonly) NSString *name;
@end
Code language: CSS (css)
- There is nothing wrong with this code.✔
- There is no read-only directive.
- MyClass doesn’t implement NSObject.
- Properties are declared in the implementation.
Q21. What is an enums base type for the code below?
typedef enum { Foo1, Foo2} Foo;
- There is no base type.✔
- NSObject
- int
- NSNumber
Q22. If you want to store a small amount of information (e.g., user settings), what’s the best, built-in way to go?
- UserDefaults✔
- plist file
- CoreData
- TextFile
Q23. What are categories used for?
- to extend other classes✔
- to manage access control
- to coordinate objects
- to group classes
Q24. What is this Objective-C code checking?
if ([keyPath isInstanceOf:[NSString class]]) {
}
Code language: CSS (css)
- This code contains an error✔
- if keyPath is an instance of NSString
- if keyPath’s baseclass is the same as NSString’s baseclass
- if keyPath implements the same methods as NSString
Q25. What is this a declaration of?
int(^foo)(int);
- an Extension
- a Generic
- a block of code✔
- an abstract class
Q26. For observing changes to a property, which of these two statements cause the related method to be called and why?
1. _val = 1;
2. self.val= 100;
Code language: PHP (php)
- Statement 2, since it calls the auto-created setter on the property.✔
- Statement 1, since it uses the property directly.
- Statement 2, since it specifies the class instance to use.
- Statement 1, since it calls the auto-created setter on the property.
Q27. What is wrong with this code?
float x = 2.0;
int(^foo)(int) = ^(int n1) {
return (int)(n1*x);
};
foo(5);
Code language: JavaScript (javascript)
- Ints and floats can’t be multiplied.
- The parameter isn’t declared correctly.
- x is not in the right scope.
- Nothing is wrong with this code.✔
Q28. What’s the difference between an array and a set?
- Arrays are ordered, non-unique values.✔
- Arrays are stored sorted.
- Sets are ordered, unique values.
- Sets can contain nils.
Q29. Dot notation can be used for _?
- nothing, as they’re never used in Objective-C
- function calls only
- property getter/setter✔
- parameter delimiters
Q30. What is the value of newVals after this code is executed?
NSArray *vals = @[@"1", @"2", @"3"];
NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF.intValue > 1"];
NSArray *newVals = [vals filteredArrayUsingPredicate:pred];
Code language: JavaScript (javascript)
- 2,3✔
- nil
- This code contains an error
- 2,”3″
Q31. How would this function be called?
-(int)foo:(int)a b:(int)c;
Code language: CSS (css)
- self.foo(5, b:10);
- This code contains an error.
- [self foo:5:10:20];
- [self foo:5 b:10];✔
Q32. What is the type of error return value stored in JSON?
NSError *error;
NSData *data;
id json = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&error];
- NSString
- NSArray
- id✔
- NSDictionary
Q33. What is significant about this function declaration?
-(void)testFunc:(NSString**)str;
Code language: JavaScript (javascript)
- The parameter is passed by value and can not be changed
- ** is not allowed on a parameter
- The parameter may be nil
- The parameter is passed by reference and may be changed✔
Q34. What is printed from this code execution?
typedef enum {
thing1,
thing2,
thing3
} Thing;
-(void) enumStuff {
NSLog(@"%d", thing2);
}
Code language: JavaScript (javascript)
- 0
- 1✔
- thing2
- This code does not print anything
Q35. You are worried about threaded access to a property and possible collision in writing. What directive should you use on the property?
- non-atomic
- strong
- weak
- atomic✔
Q36. What is wrong with this line of code?
int temp = 1==1;
-
temp
is a keyword. - 1==1 is invalid.
- 1==1 evaluates to a Boolean.
- Nothing is wrong with it.✔
Q37. What is special about the code within this block?
dispatch_async(dispatch_get_main_queue(), ^{
// code
});
Code language: JavaScript (javascript)
- It executes on the main queue.✔
- It is the last code to run before the app goes inactive.
- It executes on a background thread.
- It is queued to execute in the background.
Q38. How many items are in set1 after this code executes?
NSMutableSet *set1 = [NSMutableSet setWithObjects: @1,@2, @3, @4, @5, nil];
[set1 add0bject:@3];
- zero
- six
- one
- five✔
Q39. What is wrong with this code?
NSDictionary *d1 = @[@"v1", @4, @"v2", @5.6, @"v3"];
NSlog(@"d1: %@", d1);
Code language: JavaScript (javascript)
- NSDictionary cannot be printed this way.
- The last key is missing a value.✔
- Dictionaries cannot have mixed types as values.
- d1 is assigned an NSArray of values.
Q40. What is the initial value of the property val
?
@property (nonatomic, readonly) int val;
Code language: CSS (css)
- 8
- nil
- -1
- undefined✔
Q41. Which thread should UI updates be processed on to avoid crashes and application lag?
- UI✔
- dispatch
- background
- main
Q42. What is the value of val after this code is executed?
NSString *val = @"1.23";
BOOL tf = val.boolValue;
Code language: JavaScript (javascript)
- This code is invalid
- YES
- NO✔
- 1
Q43. In this code, what does ThatOne refer to?
@interface TestClass : ThisOne <ThatOne>
Code language: HTML, XML (xml)
- the parent class of TestClass
- the name of the category being created for ThisOne
- a protocol implemented by ThisOne✔
- a helper file’s name
Q44. What is the value of the result after this code is executed?
NSString *result = [Ftest"
stringByTrimmingCharactersInSet.NSCharacterSet.alphanumericCharacterSet];
- “”
- “es”
- “test”✔
- none of these answers
Q45. When will self receive the notification based on this code?
MyClass .classObj = [[MyClass allot] init];
[class0bj add0bserver:self forKeyPath:@"name"
options:NSKeyValueObservingOptionNew context:NULL];
Code language: PHP (php)
- none of these answers
- class0bj will receive the notification, not self.
- when class0bj is set to “name”
- when the name property in the class0bj instance changes✔
Q46. What is wrong with this code?
[*"true" boolValue];
Code language: CSS (css)
- String literals are not created with*.
- NSString doesn’t have a boolValue function.✔
- “true” has no meaning.
- There is nothing wrong with this code.
Q47. How many times does this loop execute?
int loopVal = 0;
for (int i=0; i>loopVal; i--){
i--;
}
- an infinite number of times
- This code is invalid.
- zero✔
- one
Q48. What will this code print?
NSLog(@"%lu", @"test".length);
Code language: JavaScript (javascript)
- “test”
- Nothing, this code is invalid.
- 4✔
- 0
Q49. What is the value of numVtoInt after this code is executed?
NSNumber *numV = [NSNumber numberWithFloat:6.7];
int numVtoInt = numV.intValue;
- 6
- 0
- 6.7
- 7✔
Q50. What does this code print?
NSString *val = @"1.23";
NSLog(@"%.04f", val.floatValue);
Code language: JavaScript (javascript)
- 1.2300✔
- .04
- This code is invalid
- 1
Q51. What is the maximum possible value of r1 in this code?
int r1 = arc4random() % 10;
- 0
- 9✔
- 1
- 10