iOS/Swift

[Swift] extension 익스텐션

유훈 | Yuhun 2022. 1. 25. 01:02
반응형

 

// 익스텐션
// 타입에 새로운 기능을 추가할 수 있는 기능

//extension 확장할 타입 {
//}

//extension String: 프로토콜1,프로토콜2,프로토콜3 {
//
//}

// 예시

extension Int {
    var isEven: Bool {
        return self % 2 == 0
    }
    var isOdd: Bool {
        return self % 2 == 1
    }
}

print(1.isEven)
print(2.isEven)

// 메서드 추가 예시

extension Int {
    func multiply(by n: Int) -> Int {
        return self * n
    }
}

print(3.multiply(by: 3))

// 생성자 추가 예시
extension String {
    init(intTypeNumber: Int){
        self = "\(intTypeNumber)"
    }
    init(doubleTypeNumber: Double) {
        self = "\(doubleTypeNumber)"
    }
}

let a: String = String(intTypeNumber: 100)
print(a)

출처 : 야곰 스위프트 기본 문법 강좌

 

반응형

'iOS > Swift' 카테고리의 다른 글

Xcode 단축키  (0) 2022.01.30
[Swift] 고차함수 map, filter, reduce  (0) 2022.01.25
[Swift] 프로토콜 protocol  (0) 2022.01.25
[Swift] assert 와 guard  (0) 2022.01.25
[Swfit] 옵셔널 체이닝  (0) 2022.01.24