Score %0 (0 correct0 incorrect20 unanswered)

Q1. Wofür steht dieser Code als Beispiel?

let val = (Double)6
  • Ein Syntaxfehler
  • Typumwandlung
  • Zuweisung
  • Initialisierung

Referenz: The Swift Programming Language: Sprachführer: Die Grundlagen: Konstanten und Variablen

Q2. Was ist der Fehler in diesem Code?

let x = 5
guard x == 5 { return }
  • Der guard fehlt das else
  • Nichts ist falsch
  • Der guard fehlt ein then
  • Der Vergleich ist falsch

Referenz: The Swift Programming Language: Sprachführer: Kontrollfluss: Früher Ausstieg

Q3. Was ist der Roh-/Untertyp dieses Enums?

enum Direction {
  case north, south, east, west
}
  • Keiner
  • String
  • Any
  • Int

Referenz: The Swift Programming Language: Sprachführer: Aufzählungen: Rohwerte

Q4. Warum wird dispatchGroup in bestimmten Situationen verwendet?

  • Es ermöglicht das gleichzeitige Ausführen mehrerer synchroner oder asynchroner Operationen auf verschiedenen Queues.
  • Es ermöglicht das Verfolgen und Steuern der Ausführung mehrerer Operationen zusammen.
  • Es ermöglicht es Operationen, je nach Bedarf aufeinander zu warten.
  • Alle diese Antworten.

Referenz: Apple Developer: Dokumentation: Dispatch: Dispatch-Gruppe

Q5. Wofür steht dieser Code als Beispiel?

let val = 5
print("Wert ist: \(val)")
  • Zeichenketteninterpolation
  • Zeichenkettenkompilierung
  • Methodenverkettung
  • Zeichenkettenverkettung

Referenz: The Swift Programming Language: Sprachführer: Zeichenketten und Zeichen: Zeichenketteninterpolation

Q6. Was sind die Inhalte von vals, nachdem dieser Code ausgeführt wurde?

var vals = [10, 2]
vals.sort { (s1, s2) -> Bool in
  s1 > s2
}
  • [10, 2]
  • [2, 10]
  • nil
  • Dieser Code enthält einen Fehler

Referenz: Apple Developer: Dokumentationen: Swift: Array: sort()

Q7. Was gibt dieser Code aus?

typealias Thing = [String: Any]
var stuff: Thing
print(type(of: stuff))
  • Dictionary<String, Any>
  • Dictionary
  • Error
  • Thing

Referenz: The Swift Programming Language: Sprachreferenz: Typen: Typbezeichner

Q8. Was ist der Wert von y?

let x = ["1", "2"].dropFirst()
let y = x[0]
  • Dieser Code enthält einen Fehler
  • 1
  • 2
  • nil

Erklärung
dropFirst() von Swift.Collection.Array gibt einen Typ von ArraySlice<Element> zurück.
Wie auf den Dokumentationsseiten angegeben:
@inlinable public func dropFirst(_ k: Int = 1) -> ArraySlice<Element>

Der ArraySlice-Typ ermöglicht es Ihnen, schnell und effizient Operationen auf Abschnitten eines größeren Arrays durchzuführen. Anstatt die Elemente eines Ausschnitts in einen neuen Speicher zu kopieren, präsentiert eine ArraySlice-Instanz eine Ansicht auf den Speicher eines größeren Arrays. Und weil ArraySlice dieselbe Schnittstelle wie Array präsentiert, können Sie im Allgemeinen dieselben Operationen auf einem Ausschnitt ausführen wie auf dem ursprünglichen Array.

Slices behalten Indizes bei
Anders als Array und ContiguousArray ist der Startindex für eine ArraySlice-Instanz nicht immer Null. Slices behalten die gleichen Indizes des größeren Arrays für dieselben Elemente bei, sodass der Startindex eines Ausschnitts davon abhängt, wie er erstellt wurde, und es Ihnen ermöglicht, indexbasierte Operationen entweder auf einem vollständigen Array oder einem Ausschnitt auszuführen.
Der obige Code gibt einen Ausschnitt des Werts ["2"] zurück, aber der Index hat sich nicht geändert. let y = x[1] würde das erwartete Ergebnis liefern.
Um sicher auf die Start- und Endindizes eines Ausschnitts zu verweisen, verwenden Sie immer die Eigenschaften startIndex und endIndex anstelle spezifischer Werte.
Referenz

Q9. Was ist der Wert von test in diesem Code?

var test = 1 == 1
  • true
  • JA
  • 1
  • Dieser Code enthält einen Fehler

Referenz: The Swift Programming Language: Sprachführer: Grundlegende Operatoren: Vergleichsoperatoren

Q10. Was ist der Wert von y?

var x: Int?
let y = x ?? 5
  • 5
  • 0
  • nil
  • Dieser Code enthält einen Fehler

Referenz: The Swift Programming Language: Sprachführer: Grundlegende Operatoren: Nil-Coalescing-Operatoren

Q11. Was ist der Typ dieser Funktion?

func add(a: Int, b: Int) -> Int { return a+b }
  • Int
  • `(Int

, Int) -> Int`

  • Int<Optional>
  • Funktionen haben keine Typen.

Referenz: The Swift Programming Language: Sprachführer: Funktionen: Funktionsarten

Q12. Wie ruft man diese Funktion korrekt auf?

func myFunc(_ a: Int, b: Int) -> Int {
  return a + b
}
  • myFunc(5, b: 6)
  • myFunc(5, 6)
  • myFunc(a: 5, b: 6)
  • myFunc(a, b)

Referenz: The Swift Programming Language: Sprachführer: Funktionen: Funktionsargumentetiketten und Parameterbezeichner

Q13. Das Codable-Protokoll ist _?

  • Eine Kombination aus Encodable und Decodable
  • Kein echtes Protokoll
  • Erforderlich für alle Klassen
  • Automatisch in alle Klassen aufgenommen

Referenzen:

Q14. Was ist der Typ von value1 in diesem Code?

let value1 = "\("test".count)"
  • String
  • Int
  • null
  • test.count

Referenz: The Swift Programming Language: Sprachführer: Zeichenketten und Zeichen: Zeichenketteninterpolation

Q15. Wenn eine Funktion einen Closure-Parameter akzeptiert, wann wollen Sie es als entkommen markieren?

  • Wenn es nach dem Rückgabewert der Funktion ausgeführt wird
  • Wenn sein Gültigkeitsbereich undefiniert ist
  • Wenn es verzögert geladen wird
  • Alle diese Antworten

Referenz: The Swift Programming Language: Sprachführer: Closures: Entkommende Closures

Q16. Was ist falsch an diesem Code?

class Person {
  var name: String
  var address: String
}
  • Person hat keine Initialisierer.
  • Person hat keine Basisklasse.
  • var name ist nicht korrekt formatiert.
  • address ist ein Schlüsselwort.

Referenz: The Swift Programming Language: Sprachführer: Initialisierung: Klassenvererbung und Initialisierung

Q17. Was ist der Wert von names, nachdem dieser Code ausgeführt wurde?

let names = ["Bear", "Joe", "Clark"]
names.map { (s) -> String in
  return s.uppercased()
}
  • ["BEAR", "JOE", "CLARK"]
  • ["B", "J", "C"]
  • ["Bear", "Joe", "Clark"]
  • Dieser Code enthält einen Fehler.

Q18. Was beschreibt diese Codezeile?

let val = 5
  • Eine Konstante namens val vom Typ Int
  • Eine Variable namens val vom Typ item
  • Eine Konstante namens val vom Typ Number
  • Eine Variable namens val vom Typ Int

Referenz: The Swift Programming Language: Sprachführer: Die Grundlagen: Typsicherheit und Typinferenz

Q19. Was ist der Fehler in diesem Code?

extension String {
  var firstLetter: Character = "c" {
    didSet {
      print("neuer Wert")
    }
  }
}
  • Erweiterungen können keine Eigenschaften hinzufügen.
  • Nichts ist damit falsch.
  • didSet nimmt einen Parameter.
  • c ist kein Zeichen.

Referenz: The Swift Programming Language: Sprachführer: Erweiterungen: Berechnete Eigenschaften

Q20. didSet und willSet sind Beispiele für _?

  • Eigenschaftsbeobachter
  • Schlüsselattribute
  • Alle diese Antworten
  • neuAlt Wertaufrufe

Referenz: The Swift Programming Language: Sprachführer: Eigenschaften