Branchement conditionnel, répétition, exécution retardée, correspondance de modèle Une syntaxe qui contrôle le flux d'exécution d'un programme. Il existe des branchements conditionnels et des répétitions dans le contrôle du flux de contrôle, et ils peuvent être combinés et exécutés librement.
chapter5.swift
let array = [1,2,3]
for element in array {
print(element)
}
Dictionary
chapter5.swift
let dictionary = ["a": 1, "b": 2]
for (key,value) in dictionary {
print("Key: \(key), vlue: \(value)")
}
chapter5.swift
var f = 1
while f < 4 {
print(f)
f += 1
}
L'instruction while évalue l'expression conditionnelle avant son exécution, elle peut donc ne jamais être exécutée. Par conséquent, si vous souhaitez le répéter plusieurs fois, quel que soit le succès ou l'échec de l'expression conditionnelle, utilisez la répétition whie.
chapter5.swift
var t = 1
repeat {
print(t)
t += 3
}
while t < 1
L'instruction break met fin à l'ensemble de l'instruction répétitive.
chapter5.swift
var containsTwo = false
let garray = [1,2,3]
for element in garray {
if element == 2 {
containsTwo = true
break
}
print("element:\(element)")
}
print("containsTwo:\(containsTwo)")
chapter5.swift
var odds = [Int]()
let rarray = [1,2,3,4,5,6]
for element in rarray {
if element % 2 == 1 {
odds.append(element)
continue
}
print("even:\(element)")
}
print("odds:\(odds)")
}
déclaration différée: traitement en quittant le champ
chapter5.swift
var count = 0
func someFUNTIONS() -> Int{
defer {
count += 1
}
return count
}
print(someFUNTIONS())
print(someFUNTIONS())
print(count)
swift a le concept d'un modèle qui exprime la structure et les propriétés d'une valeur Attendre un modèle consiste à vérifier si la valeur correspond à un modèle spécifique.
Modèle d'expression ~ = Évaluation par l'opérateur
chapter5.swift
let integer = 6
switch integer {
case 6:
print("match: 6")
case 5...10:
print("match: 5...10")
default:
print("default")
}
chapter5.swift
let values = 3
switch values {
case let matchValue :
print(matchValue)
}
chapter5.swift
let values = 3
let optionalD = Optional(4)
switch optionalD{
case let f?:
print(f)
default:
print("nil")
}
}
chapter5.swift
enum Hemisphere {
case northern
case southern
}
let hemisphere = Hemisphere.southern
//let hemisphere = Optional(Hemisphere.southern)
switch hemisphere {
case .northern:
print("match: .northern")
case .southern:
print("match: .southern")
//case nil:
// print("nil")
}
enum Color {
case rgb(Int,Int,Int)
case cmyk(Int,Int,Int,Int)
}
let color = Color.rgb(100, 200, 230)
switch color {
case .rgb(let r, let h, let j):
print(".rgb: (\(r), \(h), \(j))")
case .cmyk(let k,let y, let u, let o):
print(" .cmyk: (\(k),\(y),\(u),\(o))")
}
chapter5.swift
let any: Any = "fafafa"
switch any {
case is String:
print("match: String")
case is Int:
print("match: Int")
default:
print("default")
}
}
chapter5.swift
let anys : Any = "1"
switch anys {
case let string as String:
print("match: string(\(string))")
case let int as Int:
print("match: int(\(int))")
default:
print("default")
}
chapter5.swift
let fff = 9
if case 1...10 = fff {
print("yes")
}
//déclaration de garde
func someFunc() {
let value = 9
guard case 1...10 = value else {
return
}
print("yes")
}
someFunc()
//pour dans la déclaration
let harray = [1,2,3,4,5,6]
for case 2...5 in harray {
print("2 ou plus et 5 ou moins")
}
chapter5.swift
var nextValue = Optional(1)
while case let value? = nextValue {
print("value:\(value)")
if value >= 8 {
nextValue = nil
} else {
nextValue = value + 1
}
}
Recommended Posts