Score %0 (0 correct0 incorrect20 unanswered)
Q1. Quelle est la valeur de s ?
NSMutableString *s = [NSMutableString stringWithString: @"123"];
[s appendString: @"456"];
- 123456
- 123
- 123
- 456
- Ce code contient une erreur.
Q2. Quelle est la valeur de i après ces instructions ?
NSString *str = nil;
NSInteger i = str.integerValue;
- nil
- 0 (techniquement
nil
== 0 mais i aura une valeur littérale de 0
et non la valeur void*
de nil
)
- -1
- Ce code plante.
Q3. Quelle valeur se trouve dans str après l'exécution de cette ligne ?
NSString str = "test" + " " + "more";
- Ce code contient une erreur
- test
- nil
- test more
Q4. Quelle est la sortie du code ci-dessous ?
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);
- 2
- 1,2,3
- 1,2
- Rien, car ce code contient une erreur.
Q5. Les valeurs par défaut des propriétés incluent _?
- atomic/strong
- atomic/weak
- nonatomic/weak
- nonatomic/strong
Q6. Quelle est la principale différence entre NSDictionary et NSMutableDictionary ?
- Les valeurs de NSMutableDictionary peuvent être modifiées
- NSMutableDictionary n'a pas d'initialiseurs.
- NSDictionary ne peut pas être copié.
- Les valeurs de NSDictionary peuvent être modifiées.
Q7. Qu'est-ce que foo ?
-(float)foo;
- Une fonction avec un type de retour float.
- Ce code contient une erreur.
- Une déclaration de variable de type float.
- Une propriété de type float.
Q8. Que pouvez-vous déduire de cette ligne ?
#import "NSString+NameHelper.h"
- NameHelper est une catégorie de NSString.
- NameHelper est une sous-classe de NSString.
- NSString implémente le protocole NameHelper.
- NSString a une classe d'aide.
Q9. Qu'est-ce qui ne va pas avec ce code ?
float x = 5.;
- Rien ne va pas avec ce code.
- Les déclarations n'ont pas besoin de point-virgules.
- x=5 est un float invalide.
- Les variables ne peuvent pas être déclarées et initialisées dans le même état.
Q10. Combien de fois cette boucle sera-t-elle exécutée ?
for (int x=0; x<100; x++) {
x = x + 1;
}
- 50
- 99
- 100
- Ce code contient une erreur.
Q11. De quoi est un exemple ce code ?
[self addObserver: self forKeyPath: @"val" options:0 context: nil];
- Observation de clé-valeur
- Observation de valeur de classe
- Observation de clé-donnée
- Observation de chemin de clé
Q12. Que signifie ARC ?
- Comptage automatique des références
- Vérification automatique des rétentions
- Cycles de rétentions asynchrones
- Code de libération automatique
Q13. Que sera imprimé pour ce code ?
int val = 0;
val = 1.5;
printf("%d", val);
- 1
- 2
- 0
- Ce code contient une erreur.
Q14. Quelle est la meilleure description de l'héritage de classe en Objective-C ?
- héritage simple mais implémentation de multiples protocoles
- Objective-C ne prend pas en charge l'héritage
- héritage de classe double
- héritage de classe illimité et respect des protocoles multiples
Q15. Combien de clés ce NSDictionary a-t-il après l'exécution de ce code ?
NSDictionary *dict = [[NSDictionary alloc] initWithObjectsAndKeys: @"b", @"e", @"a", @"r", nil];
- 2
- 4
- 5
- Ce code contient une erreur.
Q16. Quelle est l'erreur dans ce code ?
NSMutableDictionary *dict1 = [NSMutableDictionary dictionaryWithCapacity:5];
[dict1 setValue:@"key" forKey:@"value"];
- Les éléments de clé et de valeur sont mélangés
- Rien ne va pas avec ça
- Vous ne pouvez pas définir la capacité d'un dictionnaire
- NSMutableDictionary n'a pas de fonction :setValue:forKey.
Q17. Que donne l'impression de ce code ?
NSData *data = [@"print" dataUsingEncoding:NSASCIIStringEncoding];
NSLog(@"%@", [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding]);
- print
- Ce code est invalide
- Rien n'est imprimé à partir de ce code.
- nil
Q18. Qu'est-ce qui est différent à propos de cette fonction ?
+(void)doSomething;
- C'est statique
- C'est abstrait.
- C'est en ligne.
- Ce code contient une erreur.
Q19. Les structs peuvent avoir _?
- fonctions
- initialiseurs
- champs
- toutes ces réponses
Q20. Qu'est-ce qui ne va pas avec ce code ?
@interface MyClass : NSObject
@property (strong, nonatomic, readonly) NSString *name;
@end
- Il n'y a rien de mal avec ce code.
- Il n'y a pas de directive en lecture seule.
- MyClass n'implémente pas NSObject.
- Les propriétés sont déclarées dans l'implémentation.