Swift의 기본 데이터 타입
- Bool
- Int, UInt
- Float, Double
- Character, String
Bool
true
와 false
만을 값으로 가지는 타입
var someBool: Bool = true someBool = false // someBool = 0 // 컴파일 오류발생 // someBool = 1 // 컴파일 오류발생
Int, UInt
Int
정수 타입. 현재는 기본적으로 64비트 정수형.
var someInt: Int = -100 // someInt = 100.1 // 컴파일 오류발생
UInt
양의 정수 타입. 현재는 기본적으로 64비트 양의 정수형.
var someUInt: UInt = 100 // someUInt = -100 // 컴파일 오류발생 // someUInt = someInt // 컴파일 오류발생
Float, Double
Float
실수 타입. 32비트 부동소수형.
var someFloat: Float = 3.14 someFloat = 3
Double
실수타입. 64비트 부동소수형.
var someDouble: Double = 3.14 someDouble = 3 // someDouble = someFloat // 컴파일 오류발생
Character, String
Character
문자 타입. 유니코드 사용. 큰따옴표("") 사용.
var someCharacter: Character = "" someCharacter = "" someCharacter = "가" someCharacter = "A" // someCharacter = "하하하" // 컴파일 오류발생 print(someCharacter)
String
문자열 타입. 유니코드 사용. 큰따옴표("") 사용.
var someString: String = "하하하 " someString = someString + "웃으면 복이와요" print(someString) // someString = someCharacter // 컴파일 오류발생
생각해보기
다음 코드에서 integer, floatingPoint, apple 상수는 각각 어떤 타입이 될까요? 상상해보고 확인해보세요~!
let integer = 100 let floatingPoint = 12.34 let apple = "A"
힌트 : type(of: )
Any, AnyObject, nil
- Any
- AnyObject
- nil
Any
Swift의 모든 타입을 지칭하는 키워드
var someAny: Any = 100 someAny = "어떤 타입도 수용 가능합니다" someAny = 123.12
Any 타입에 Double 자료를 넣어두었더라도 Any는 Double 타입이 아니기 때문에 할당할 수 없습니다. 명시적으로 타입을 변환해 주어야 합니다. 타입 변환은 차후에 다룹니다
let someDouble: Double = someAny // 컴파일 오류발생
AnyObject
모든 클래스 타입을 지칭하는 프로토콜
클래스와 프로토콜에 대한 설명은 차후에 합니다
class SomeClass {} var someAnyObject: AnyObject = SomeClass()
AnyObject는 클래스의 인스턴스만 수용 가능하기 때문에 클래스의 인스턴스가 아니면 할당할 수 없습니다.
someAnyObject = 123.12 // 컴파일 오류발생
nil
없음을 의미하는 키워드
다른 언어의
NULL
,Null
,null
등과 유사한 표현입니다.
아래 코드에서 someAny
는 Any
타입이고, someAnyObject
는 AnyObject
타입이기 때문에 nil
을 할당할 수 없습니다.
nil
을 다루는 방법은 옵셔널 파트에서 다룹니다.
someAny = nil // 컴파일 오류발생 someAnyObject = nil // 컴파일 오류발생
관련문서
by yagom
facebook : http://www.facebook.com/yagomSoft
facebook group : https://www.facebook.com/groups/yagom/
p.s 제 포스팅을 RSS 피드로 받아보실 수 있습니다.
RSS Feed 받기