enum 값을 앞에서 다루는 방법을 알아보았는데요. 이 값을 switch에 넣어서 사용하는것보다는 if문에서 처리하는게 편할수도 있는 경우가 있습니다. 딱 한개 값만 가져와서 사용할 정도랄까... 그럼 코드 들어갑니다. 1. if case let 1234567891011121314enum CustomType { case number(_ value: Int) case string(_ value: String)} let number = CustomType.number(1) if case let CustomType.number(value) = number { print("number = \(value)")} else { print("not number")} // number = 1Colored by Color..
타입 매칭을 하는 경우에 enum 값을 이용하여서 범위내의 값을 구분할 수 있습니다. 다음과 같이 표현 가능합니다. 123456789let point = (1, 0)switch point {case (0, 0): print("(0, 0)은 원점입니다. ")case (-1...1, -1...1): print("(\(point.0), \(point.1))은 거의 오차범위입니다.")default: print("(\(point.0), \(point.1))은 오차를 벗어납니다.")}Colored by Color Scriptercs 값은 거의 오차범위입니다가 나올겁니다. 이것을 switch에서 사용할 수 있는 이유는 ~=를 사용하기 때문입니다. ~=는 범위내에 존재하는지를 판별하기 위한 연산자이며, 오버로딩이 가능..
Type matching의 두번째입니다. 각 데이터 타입별로 값을 비교하는 방법입니다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990// Tuples let point = CGPoint(x: 7, y: 0)switch (point.x, point.y) {case (0,0): print("On the origin!")case (0,_): print("x=0: on Y-axis!")case (_,0): print("y=0: on X-axis!")cas..
enum은 swift에서 사용하기에 가장 훌륭한 자료형입니다.이것을 다양한 자료형을 이용하기 위해서 사용할 경우의 사용방법입니다. 1. 기본 대입 방법입니다. 다음과 같은 enum이 있다고 합시다. 12345enum CustomType { case string(_ value: String) case number(_ value: Int) case date(_ value: Date)}Colored by Color Scriptercs 그러면 이것을 이용하기 위한 방법은 여러가지 입니다. 1. switch를 이용 123456789101112let type = CustomType.number(1) func test() { switch type { case let .date(value): // value는 Date..
결혼준비를 하느라 제가 이것저것 못보고 살았네요.얼마전에 개발을 위해서 자료를 보던중에 swift4.1에서 추가된 부분을 작게 적으려고 합니다. 간략하게 기능만 이야기를 하면 snake case를 더 이상 enum을 만들어서 처리하지 않아도 됩니다. 무슨 이야기냐면 저희는 변수명을 언더바가 들어간 스네이크를 잘 사용하지 않지만 서버는 이런걸 좋아하죠. 바로 설명으로 간략하게 정리만 하겠습니다. 옵션만 추가하게 되면 됩니다. 다음과 같은 json data 가 있다고 합시다. 1234567let json = """{ "silver_winner": "Sound", "gold_winner": "Light", "bronze_winner": "Unladen Swallow"}""".data(using: .utf8)!..
- Total
- Today
- Yesterday
- Python
- Linux
- ios
- windows10
- rxswift
- docker
- Windows
- Gradle
- cocoapods
- android
- tomcat
- enum
- github
- go
- Xcode
- SWIFT
- intellij
- Kotlin
- Java
- php
- war
- golang
- CentOS
- centos8
- Codable
- nodejs
- MySQL
- git
- ubuntu
- Spring
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |