swift 中閉包的寫法與使用
1沒(méi)有參數(shù)沒(méi)有返回值得情況
let b1 = {
print("閉包")
}
b1()
2沒(méi)有參數(shù),有返回值的情況 ,
let b2 = {
() -> (Int) in
return 123
}
print(b2())
3有參數(shù) 沒(méi)有返回值 要用in 隔開(kāi)
let block = {
(num : Int) in
print("輸入了\(num)")
}
block(123)
4有參數(shù) 有返回值的情況 要用 in 隔開(kāi)
let b4 = {
(intNum : Int) -> (Int) in
return intNum
}
懶加載的寫法
lazy var aba : UILabel = {
let label = UILabel(frame: CGRect(x: 0, y: 0, width: 120, height: 123))
label.text = "label"
label.textColor = UIColor.red
return label
}()
網(wǎng)絡(luò)請(qǐng)求
func loadData () {
DispatchQueue.global().async {
// 拿到數(shù)據(jù)
print("當(dāng)前線程\(Thread.current)")
// 回到主線程
DispatchQueue.main.async(execute: {
print("當(dāng)前線程\(Thread.current)")
})
}
}