Score %0 (0 correct0 incorrect20 unanswered)

Q1. Was ist der Wert von s?

NSMutableString *s = [NSMutableString stringWithString: @"123"];
[s appendString: @"456"];
  • 123456
  • 123
  • 123
  • 456
  • Dieser Code enthält einen Fehler.

Q2. Was ist der Wert von i nach diesen Anweisungen?

NSString *str = nil;
NSInteger i = str.integerValue;
  • nil
  • 0 (technisch nil == 0, aber i wird einen Literalwert von 0 haben und nicht den void*-Wert von nil)
  • -1
  • Dieser Code stürzt ab.

Q3. Welcher Wert ist in str nach dieser Zeile ausgeführt?

NSString str = "test" + " " + "more";

  • Dieser Code enthält einen Fehler
  • test
  • nil
  • test more

Q4. Was ist die Ausgabe des folgenden Codes?

    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
  • Nichts, da dieser Code einen Fehler enthält.

Q5. Welche Eigenschaftsstandards beinhalten _?

  • atomic/strong
  • atomic/weak
  • nonatomic/weak
  • nonatomic/strong

Q6. Was ist der Hauptunterschied zwischen NSDictionary und NSMutableDictionary?

  • Die Werte von NSMutableDictionary können sich ändern
  • NSMutableDictionary hat keine Initialisierer.
  • NSDictionary kann nicht kopiert werden.
  • Die Werte von NSDictionary können sich ändern.

Q7. Was ist foo?

-(float)foo;

  • Eine Funktion mit dem Rückgabetyp float.
  • Dieser Code enthält einen Fehler.
  • Eine Variablendeklaration vom Typ float.
  • Eine Eigenschaft vom Typ float.

Q8. Was können Sie aus dieser Zeile ableiten?

#import "NSString+NameHelper.h"

  • NameHelper ist eine Kategorie von NSString.
  • NameHelper ist eine Unterklasse von NSString.
  • NSString implementiert das NameHelper-Protokoll.
  • NSString hat eine Hilfsklasse.

Q9. Was ist falsch an diesem Code?

float x = 5.;

  • An diesem Code ist nichts falsch.
  • Deklarationen benötigen keine Semikolons.
  • x=5 ist eine ungültige Gleitkommazahl.
  • Variablen können nicht im gleichen Zustand deklariert und initialisiert werden.

Q10. Wie oft wird diese Schleife ausgeführt?

for (int x=0; x<100; x++) {
  x = x + 1;
}
  • 50
  • 99
  • 100
  • Dieser Code enthält einen Fehler.

Q11. Wofür steht diese Codezeile?

[self addObserver: self forKeyPath: @"val" options:0 context: nil];

  • Schlüssel-Wert-Beobachtung
  • Klassenwertbeobachtung
  • Schlüssel-Daten-Beobachtung
  • Schlüsselweg-Beobachtung

Q12. Wofür steht ARC?

  • Automatisches Referenzzählen
  • Automatische Retain-Überprüfung
  • Asynchrone Retain-Zyklen
  • Automatischer Freigabecode

Q13. Was wird für diesen Code gedruckt?

int val = 0;
val = 1.5;
printf("%d", val);
  • 1
  • 2
  • 0
  • Dieser Code enthält einen Fehler.

Q14. Was beschreibt am besten die Klassenvererbung in Objective-C?

  • einfache Vererbung, aber Implementierung mehrerer Protokolle
  • Objective-C unterstützt keine Vererbung
  • doppelte Klassenvererbung
  • unbegrenzte Klassenvererbung und Protokollkonformität

Q15. Wie viele Schlüssel hat NSDictionary nach der Ausführung dieses Codes?

NSDictionary *dict = [[NSDictionary alloc] initWithObjectsAndKeys: @"b", @"e", @"a", @"r", nil];

  • 2
  • 4
  • 5
  • Dieser Code enthält einen Fehler.

Q16. Was ist der Fehler in diesem Code?

NSMutableDictionary *dict1 = [NSMutableDictionary dictionaryWithCapacity:5];
[dict1 setValue:@"key" forKey:@"value"];
  • Die Schlüssel- und Wertelemente sind vertauscht
  • Es ist nichts falsch daran
  • Sie können die Kapazität eines Wörterbuchs nicht festlegen
  • NSMutableDictionary hat keine :setValue:forKey-Funktion.

Q17. Was wird aus diesem Code gedruckt?

NSData *data = [@"print" dataUsingEncoding:NSASCIIStringEncoding];
NSLog(@"%@", [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding]);
  • drucken
  • Dieser Code ist ungültig
  • Von diesem Code wird nichts gedruckt.
  • nil

Q18. Was ist anders an dieser Funktion?

+(void)doSomething;

  • Es ist statisch
  • Es ist abstrakt.
  • Es ist inline.
  • Dieser Code enthält einen Fehler.

Q19. Können Strukturen _ haben?

  • Funktionen
  • Initialisierer
  • Felder
  • alle diese Antworten

Q20. Was ist falsch an diesem Code?

@interface MyClass : NSObject
    @property (strong, nonatomic, readonly) NSString *name;
  @end
  • An diesem Code ist nichts falsch.
  • Es gibt keine Lese-Schreib-Anweisung.
  • MyClass implementiert NSObject nicht.
  • Eigenschaften werden in der Implementierung deklariert.