FE 공부20 Swift _ Tuples, Strings and Characters Tuples Unnamed Tuple (expr1,expre2, ...) tuple.n // Explicit Member Expression //예제 let data = ("", 200, "OK", 12.34) //member 삭제와 추가는 불가, 값 변경은 가능 data.0 //"" data.1 //200 data.2 //"OK" data.3 //2.34 var mutableTuple = data //가변 tuple mutableTuple.1 = 404 mutableTuple.1 //404 Named Tuples (name1: expr1, name2: expre2, ...) tuple.memberName //예제 let data = ("", 200, "OK", 12.34) let named = (bod.. 2022. 10. 4. Swift _ Closures 비교적 짧고 독립적인 코드 조각 Function 전역 함수 & Nested Function 중첩 함수 : Named Closure (그냥 함수라고 부름) Anonymous Function :Unnamed Closures (클로저라고 부름) 공통점 first class citizen 변수와 상수에 저장할 수 있음 parameter로 전달할 수 있음 함수와 메소드에서 리턴할 수 있음 >> 서로 호환 가능 Unnamed Closure의 특징 argument label 사용 X 보다 간결하고 유연함 _ 컴파일러 추론이 가능하기때문에 생략하는 것 { (parameters) -> ReturnType(Closure Head) in(in 키워드 _ Head 부분과 Body 부분 분리) statements(Closure.. 2022. 10. 4. Swift _ Functions 특정 기능을 수행하는 코드 조각 장점 Reusability _ 불필요한 코드 반복을 방지 특징 - 코드 내에서 함수 표기 시에는 괄호를 빼거나 argument label만 표기 //예제1 func printHello(with name: String) { print("hello, \(name)") } let f2: (String) -> ( ) = printHello(with:) let f3 = printHello(with:) f3("World") // hello, World //예제2 func add(a: Int, b: Int) -> Int{ return a + b } var f4: (Int, Int) -> Int = add(a:b:) f4(1, 2) // 3 - first class citizen 변수와.. 2022. 10. 3. Swift _ Optional *래핑된 값 또는 값 nil의 부재를 나타내는 형식 Non-Optional 변수와 상수에서는 값을 읽기 전에 항상 초기화 해야한다 >> 형식에 맞는 값을 갖고 있어야 한다. var nonOp1 = 23 let nonOp2 = "hello" 저장할 값이 없는 경우에는? >> Optional 이용 _ TypeName? -예제- let optionalNum: Int? = nil // 아무것도 저장하지 않겠다 // 만약 optioanl type을 nil로 초기화시에는 자료형을 지정해줘야함. 왜냐하면 nil은 형식 추론이 불가하기 때문 Optional에 값을 저장 후 사용하고싶다면? >> Forced unwrapping(강제 추출 연산자) 이용 _ OptionalExpression! -예제- var num: In.. 2022. 10. 3. 이전 1 2 3 4 5 다음