안녕하세요 공공돌🧸 입니다. 구조체에 대해 정리 해봤습니다. 1. 구조체 1. 구조체란? 스위프트 대부분 타입은 구조체로 이루어져 있습니다. 구조체는 값(value) 타입입니다. 타입이름은 대문자 카멜케이스를 사용하여 정의합니다. 2. 구조체 문법 구조체 정의 : "struct" 키워드 사용 struct 이름 { /* 구현부 */ } 구조체 프로퍼티 및 메서드 구현 struct Sample { // 가변 프로퍼티(값 변경 가능) var mutableProperty: Int = 100 // 불변 프로퍼티(값 변경 불가능) let immutableProperty: Int = 100 // 타입 프로퍼티(static 키워드 사용 : 타입 자체가 사용하는 프로퍼티) static var typeProperty: I..
안녕하세요 공공돌🧸 입니다. 옵셔널 추출에 대해 정리 해봤습니다. 1. 옵셔널 추출 1. 옵셔널 추출이란? 옵셔널에 들어있는 값을 사용하기 위해 꺼내오는 것 2. 옵셔널 방식 옵셔널 바인딩 1. nil 체크 + 안전한 추출 2. 옵셔널 안에 값이 들어있는지 확인하고 값이 있으면 값을 꺼내옵니다. 3. if-let 방식 사용 func printName(_ name: String) { print(name) } var myName: String? = nil //printName(myName) // 전달되는 값의 타입이 다르기 때문에 컴파일 오류발생 if let name: String = myName { printName(name) } else { print("myName == nil") } var yourNa..
안녕하세요 공공돌🧸 입니다. 옵셔널에 대해 정리 해봤습니다. 1. 옵셔널 1. 옵셔널이란?? 값이 있을 수도, 없을 수도 있음을 표현 nil이 할당 될 수 있는지 없는지 표현 // someOptionalParm에 nil이 할당 될 수 있다. func someFunction(someOptionalParam: Int?) { // .... } /// someOptionalParm에 nil이 할당 될 수 없다. func someFunction(someOptionalParam: Int) { // .... } someFunction(someOptionalParam: nil) // someFunction(someParam: nil) 2. 옵셔널을 쓰는 이유 명시적 표현 1. nil의 가능성을 코드만으로 표현가능 2...
안녕하세요 공공돌🧸 입니다. 반복문에 대해 정리 해봤습니다. 1. 반복문 1. for-in 구문 기존 언어의 for-each 구문과 유사합니다. Dictionary의 경우 이터레이션 아이템으로 튜플이 들어옵니다. (하단 애플 문서의 튜플 부분 참조) for-in 구문 기본 형태 for item in items { /* 실행 구문 */ } for-in 구문의 사용 var integers = [1, 2, 3] let people = ["GGDol": 25, "Bin": 10, "mike": 12] for integer in integers { print(integer) } // Dictionary의 item은 key와 value로 구성된 튜플 타입입니다 for (name, age) in people { pr..
안녕하세요 공공돌🧸 입니다. 조건문에 대해 정리 해봤습니다. 1. 조건문 1. if-else 구문 if-else 구문의 기본 형태 if만 단독으로 사용해도되고, else, else if 와 조합해서 사용 가능합니다. if 뒤의 조건 값에는 Bool 타입의 값만 위치해야 합니다. 조건을 감싸는 소괄호는 선택사항입니다. if 조건 { /* 실행 구문 */ } else if 조건 { /* 실행 구문 */ } else { /* 실행 구문 */ } if-else의 사용 let someInteger = 100 if someInteger 100 { print("100 초과") } else { print("100") } // 100 ..
안녕하세요 공공돌🧸 입니다. 함수 고급에 대해 정리 해봤습니다. 1. 함수 고급 1. 매개변수 기본 값 매개변수에 기본적으로 전달될 값을 미리 지정해 둘 수 있습니다. 기본값을 갖는 매개변수는 매개변수 목록 중 뒤쪽에 위치하는 것이 좋습니다. func 함수이름(매개변수1이름: 매개변수1타입, 매개변수2이름: 매개변수2타입 = 매개변수 기본값 ...) -> 반환타입 { /* 함수 구현부 */ return 반환값 } func greeting(friend: String, me: String = "GGDol") { print("Hello \(friend)! I'm \(me)") } // 매개변수 기본값을 가지는 매개변수는 호출시 생략할 수 있습니다 greeting(friend: "hana") // Hello h..