2 swift 상수,변수,튜풀 옵셔널
-
Upload
donggyu-park -
Category
Technology
-
view
174 -
download
2
Transcript of 2 swift 상수,변수,튜풀 옵셔널
print 함수
• println 함수를 이용하여 출력함
• C언어의 복잡한 %d, %f, %-10.3f 와 같은 출력 지정자가 필요하지 않다
• println(“숫자 num = \(num)”) 과 같이 출력함
타입 명시(Type Annotations)
• var num = 100과 같이 변수를 선언하면, Swift에서는 num을 Int형으로 추정함
• 상수나 변수를 만들때 어떤 형태의 값이 저장될 지 명확하게 타입을 명시할 수 있음
세미콜론
• C,C++ 언어는 문장의 끝에 ;(세미콜론)을 반드시 달아야 한다.
• 스위프트에서는 문장의 끝에 ;이 필요하지 않다. 한 줄에 여러 문장을 입력할 경우 ;을 달아준다
타입• 정수 : 34, -40과 같은 소수점 단위가 없는 숫자를 포함
• Int의 범위는 -2,147,483,648~2,147,483,647
• UInt 는 부호가 없는 양의 정수형
• 부동 소수점 수 : 3.14159, 2.718, …
• Double : 64비트 부동소수점 수를 표현
• Float : 32비트 부동소수점 수를 표현
• 1.2e2는 1.2*102를 의미함( 120.0과 동일함 )
타입• 부울형(Bool)
• true, false라는 기본적인 이진형 타입을 제공함
• 문자형(Character)
• 하나의 문자를 표현, let cow: Character = "🐮"
• 문자열(String)
• “hello cwapp.org”와 같은 문자의 컬렉션
옵셔널(Optionals)
• 상수와 변수의 값의 유, 무를 검서할 때 사용
• 어떤 값이 다른 값과 같은지 다른지 검사하는 것이 아니라 값 자체가 있는지 없는지를 검사하는 경우가 필요함
• nil을 이용한 값의 유무 체크
옵셔널(Optionals)• Objective-c에서의 nil의 사용은 존재하지 않는 객체에
대한 포인터를 의미 - 사용의미가 다름
• 네트워크로 정보를 받아오는 프로그램을 가정하면 네트워크 사정으로 인해 정보가 전송되지 않아서 nil이 들어올 경우 심각한 문제를 일으키게 된다
• program crash가 발생함
• Swift에서의 “nil” 은 정말로 데이터가 없음이라는 것으로 명시
옵셔널(Optionals)
If a variable is declared as an optional, it can be nil. In fact all optionals start with a value of nil until they are set to something:
옵셔널(Optionals)
옵셔널 타입을 하면 변수의 사용(연산 처리)이 불가능하다
옵셔널 타입변수에 !를 달면 일시적으로 unwrapping이 되어서 optional 변수가 아닌척 한다
옵셔널 체인person 프로퍼티에 ?를 붙여
Person() 의 name 에 액세스를 가능하도록한다
하지만 별도의 person 프로퍼티에 오브젝트를 생성하지 않았으므로 nil 값이오게된다.
참고자료
http://seorenn.blogspot.kr/2014/06/swift-optionals.html
http://lean-tra.github.io/Swift-Korean/