swift基本構文03
2648 ワード
<6>集合
<7>関数
<8>閉パッケージ
<8.1>閉パッケージの使用
func demo(){
// let
// var
//1.
let array = [1,2,3]
let array1 = ["a","b","c"]
let array2 = [" "," "," "]
print(array)
print(array1)
print(array2)
//
var a1 = [" "]
a1.append(" ")
print(a1)
//
var a2: [String] = [String]()
a2.append(" ")
print(a2)
//2.
let a3 = ["%","@","!"]
for i in 0..
<7>関数
// swift
func test() {
// , swift 2.0 , swift 3.0
func sum(a:Int ,b: Int) -> Int {
return a + b
}
//
// , \
func mul(num1 a: Int,num2 b: Int) -> Int {
return a * b
}
let result = sum(a: 1, b: 1)
print(result)
let result1 = mul(num1: 5, num2: 6)
print(result1)
}
<8>閉パッケージ
func demo() {
// 1.
let closure = {
print("hello")
}
//
closure()
func test() {
print("hello")
}
//
test()
//2.
//
let closure1 = { (a: Int, b: Int) -> Int in
return a + b
}
let result = closure1(5, 6)
print(result)
//
func sum(a: Int,b: Int) -> Int {
return a + b
}
let result2 = sum(a: 5, b: 2)
print(result2)
}
<8.1>閉パッケージの使用
override func viewDidLoad() {
super.viewDidLoad()
let closure = { (result: String) -> () in
print(result)
}
loadData(callBack: closure)
}
// 3.0
// @escaping ,
// @noescape ,
func loadData(callBack: @escaping (String)->()) {
DispatchQueue.global().async {
//
Thread.sleep(forTimeInterval: 2)
//
let result = "123"
DispatchQueue.main.async {
//
callBack(result)
}
}
}