개발
IOS 스위프트(Swift) 문법 - 초기화 구문 init
초기화(initialization) 란? 클래스 구조체 또는 열거형의 인스턴스를 사용하기 위한 준비 과정입니다. struct User { var nickname: String = "Gunter" var age: Int = 0 init() { //인스턴스가 생성되면 호출 } } let user = User() /* init(매개변수: 타입, ...) { //프로퍼티 초기화 //인스턴스 생성시 필요한 설정을 해주는 코드 작성 } */ class User { var nickname: String var age: Int init(nickname: String, age: Int) { self.nickname = nickname self.age = age } init(age: Int) { self.nickname ..
IOS 스위프트(Swift) 문법 - 클래스
class 클래스 이름 { 프로퍼티와 메서드 } class Dog{ var name: String = "" var age: Int = 0 init(){ } func introduce() { print("name \(name) age \(age)") //"name CoCo age 3\n" } } var dog = Dog() //Dog dog.name = "CoCo" //Dog dog.age = 3 //Dog dog.name //"CoCo" dog.age //3 dog.introduce() //Dog
IOS 스위프트(Swift) 문법 - 구조체
구조체? 클래스? 프로그래머가 데이터를 용도에 맞게 표현하고자 할 때 사용합니다. 프로퍼티와 메소드를 사용해서 구조화된 데이터와 기능을 가질 수 있어 하나의 새로운 사용자 정의 데이터 타입을 만들어 주는 것입니다. 스위프트에서는 클래스와 구조체 문법과 사용법이 거의 같습니다. 다른 점으로는 구조체 인스턴트는 값 타입, 클래스 인스턴트는 참조 타입으로 다른 점이 있습니다. struct 구조체 이름 { 프로퍼티와 메서드 } struct User { //변수, 상수, 함수의 이름은 소문자로 시작하는 카밀 표기법, 구조체,클래스의 이름은 대문자로 시작하는 파스칼 표기법 var nickname : String var age : Int func information(){ print("\(nickname) \(age..
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 ..
IOS 스위프트(Swift) 문법 - 반복문
반복문이란? 반복적으로 코드가 실행되게 만드는 구문을 말합니다. 반복문으로는 for-in, while, repeat-while이 있습니다. /* for 루프상수 in 순회대상 { //실행할 구문.. } */ for i in 1...4 { print(i) //1,2,3,4 } let array = [1,2,3,4,5] for i in array { print(i) //1,2,3,4,5 } /* while 조건식 { //실행할 구문 } */ var number = 5 while number < 10 { number+=1 //6,7,8,9,10 } number //10 /* repeat { //실행할 구문 } while 조건식 */ var x = 6 repeat { x+=2 } while x < 5 print..
IOS 스위프트(Swift) 문법 - 조건문
조건문이란? 주어진 조건에 따라서 애플리케이션을 다르게 동작하도록 하는 것입니다. 조건문으로는 if, switch, guard 가 있습니다. /* if 조건식 { 실행할 구문 } */ let age = 12 if age < 19{ // print("미성년자 입니다.") //"미성년자 입니다." } /* if 조건식 { 조건식이 만족하면 해당 구문 실행 } else { 만족하지 않으면 해당 구문 실행 } */ let age = 20 if age < 19 { print("미성년자") } else { print("성년자") //"성년자입니다." } /* if 조건식1{ //조건식1을 만족할 때 실행할 구문 } else if { //조건식2을 만족할 때 실행할 구문 } else { //아무 조건식도 만족하지 않..
IOS 스위프트(Swift) 문법 - 함수
함수란? 함수는 작업의 가장 작은 단위이자 코드의 집합입니다 /* func 함수명(파라미터 이름 : 데이터 타입) -> 반환 타입 { return 반환 값 } */ func sum(a : Int, b : Int) -> Int { return a+b //8 } sum(a : 5, b : 3) //8 func hello() -> String { return "hello" //"hello" } hello() //"hello" //func printName() -> Void {} //Void 사용시 func printName() { } func greeting(friend : String, me : String = "gunter"){ print("Hello, \(friend)! I'm \(me)") //"Hel..