ios#swift#스위프트#애플#아이폰
IOS 스위프트(Swift) 문법 - 익스텐션
익스텐션이란? 기존의 클래스, 구조체 , 열거형, 프로토콜에 새로운 기능을 추가하는 기능 익스텐션이 타입에 추가할 수 있는 기능 - 연산 타입 프로퍼티 / 연산 인스턴스 프로퍼티 - 타입 메서드 / 인스턴스 메서드 - 이니셜라이저 - 서브스크립트 - 중첩 타입 - 특정 프로토콜을 준수할 수 있도록 기능 추가 /* extension SomeType { //추가 기능 } */ extension Int { var isEven: Bool { return self % 2 == 0 } var isOdd: Bool { return self % 2 == 1 } } var number = 3 number.isOdd number.isEven extension String { func convertToInt() -> Int..
IOS 스위프트(Swift) 문법 - 옵셔널 바인딩
옵셔널 해제 방법은 크게 두가지가 있습니다. 명시적 해제 - 강제 해제, 비강제 해제(옵셔널 바인딩) 묵시적 해제 - 컴파일러에 의한 자동 해제, 옵셔널의 묵시적 해제 //강제 해제 var number : Int? = 3 //3 print(number) //"Optional(3)\n" print(number!) //"3\n" //!를 붙이면 강제 해제를 한다 //비강제 해제(옵셔널 바인딩) if let result = number { //조건문을 이용하여 추출 print(result) //"3\n" } else { } func test() { //guard문을 이용하여 true일때만 추출 let number: Int? = 5 //5 guard let result = number else { return ..
IOS 스위프트(Swift) 문법 - 옵셔널
옵셔널이란? 값이 있을 수도 있고 없을 수도 있습니다. var name : String = "안녕하세요" var name : String = "" var name : String? = nil var number : Int = 7 var number : Int = 0 var number : Int? = nill var name : String? //nil var optionalName : String? = "Gunter" //"Gunter" print(optionalName) //"Optional("Gunter")\n" var requiredName : String = optionalName //Value of optional type 'String?' must be unwrapped to a value ..