2022_iOS 앱 개발자 워크숍/1, Swift 문법 복습40 Swift : Guard문 정의 : 표현식이 거짓으로 판단될 경우 실행 - 반드시 else 절이 포함되야 함. - else 절에는 흐름을 빠져나가는 구문(return, break, continue, throw)을 반드시 포함해야함. - 언래핑된 변수의 값을 guard문 밖에 있는 코드가 사용할 수 있음. ( if let은 불가능 ) 형식 guard else { // 표현식이 거짓일 경우 실행될 코드 // } // 표현식이 참일 경우 실행될 코드 guard문 예제 func munliplyByTen(value: Int?) { guard let number = value, number < 10 else { print("수가 10보다 크다") return } print(number*10) } munliplyByTen(value: 3) 실.. 2022. 1. 4. Swift : 제어문 [ for, while, if, break, continue ] for 문 ( 증가 ) for i in 0.. 0) 실행결과 // 9 // 8 // 7 // 6 // 5 // 4 // 3 // 2 // 1 // 0 Break문 for i in 1.. 4) { break } print(i) } 실행결과 // 1 // 2 // 3 // 4 Continue문 : 반복문에서 continue문 이후의 모든 코드를 건너뛰고 반복문의 상단 시작 위치로 돌아감. for i in 1...10{ if i % 3 == 0 { continue } print(i) } 실행결과 // 1 // 2 // 4 // 5 // 7 // 8 // 10 If문 ※ if문 다음의 실행코드가 한 줄이라도 괄호를 필수적으로 사용해야한다. ※ var x = 5 if x > 1 { print("1보다 크다") }.. 2022. 1. 4. Swift : nil 병합 연산자 정의 옵셔널 변수에 값이 없는 상태(nil)이면 ?? 뒤에 할단되는 값을 저장/사용하고, 옵셔널 변수에 값이 옵셔널 값이면 옵셔널 값이 아닌 상태의 값으로 저장/사용 형식 옵셔널 변수 ?? nil 일 때 할당되는 값 예제1 let defaultValue = 10 var Value : Int? Value = 20 print(Value) var myValue = Value ?? defaultValue print(myValue) 실행 결과 // Optional(20) // 20 예제2 let defaultValue = 10 var Value : Int? print(Value) var myValue = Value ?? defaultValue print(myValue) 실행결과 // nil // 10 강의 출처 .. 2022. 1. 4. Swift : Any 와 AnyObject AnyObject [ Protocol ] - 어떠한 클래스의 객체,인스턴스도 표현 할 수 있다 - 클래스의 가장 최상위 개념 Any - AnyObject 보다 더 포괄적인 개념이다. - 인스턴스와 객체 뿐만 아니라 클래스, 구조체, 열거형, 함수타입도 저장 가능하다 강의 출처 : https://www.youtube.com/channel/UCM8wseo6DkA-D7yGlCrcrwA 2022. 1. 4. Swift : 인스턴스 타입 검사 ( is ) 형식 인스턴스 is 클래스 검사 내용 - 지정된 객체가 is 뒤에 오는 클래스의 인스턴스인지 검사 - 인스턴스가 해당 클래스인지 검사 예제 class SeaGreen {} var H = SeaGreen() if H is SeaGreen{// H 라는 인스턴스가 SeaGreen 이라는 클래스에 해당되는지 검사 print(":)")// 해당될 경우 :) 출력 } 실행결과 // :) 강의 출처 : https://www.youtube.com/channel/UCM8wseo6DkA-D7yGlCrcrwA 2022. 1. 4. Swift : 형변환 [ 업 캐스팅, 다운 캐스팅, as ] 업 캐스팅 - 자식 인스턴스를 부모 클래스로 변환하는 것 - 상속 관계가 있는 클래스들끼리만 타입 캐스팅 가능 - as 연산자를 이용해 타입 변환 다운 캐스팅 - 부모 인스턴스를 자식 클래스로 변환하는 것 - as! : 성공 확신이 있는 경우 강제변환 → 변환이 안되면 Crash - as? : 성공 확신이 없는 경우 안전하게 변환 → 변환이 안되면 nil이 리턴되어 옵셔널 타입으로 반환 ( 옵셔널 바인딩, Forced unwrapping 필요 ) * 클래스로부터 만들어진 객체를 인스턴스라고 한다. 강의 출처 : https://www.youtube.com/channel/UCM8wseo6DkA-D7yGlCrcrwA 2022. 1. 4. 이전 1 ··· 3 4 5 6 7 다음