[Swift] 기본 데이터 타입

Minjeong Park·2021년 10월 12일
0

Swift 문법

목록 보기
4/9

Swift의 모든 데이터 타입 이름은 대문자로 시작한다.
더 많은 데이터 타입이나 상세한 설명은 공식 도큐먼트를 참조하자.

Bool

Bool타입은 Boolean의 약자로 true / false를 담을 수 있다.
true or false로 떨어지는 연산의 결과(ex. 1 == 2, 1 != 2)는 담을 수 있지만,
Bool 타입 변수에 0과 1을 대입할 수는 없다.

// 01-Bool
var someBool : Bool = true
someBool = false

someBool = (1 != 0)

someBool = 1 // error
someBool = 0 // error

Int

Int 타입은 Integer의 약자로, 정수 타입의 데이터를 모두 담을 수 있다.
정수 범위를 넘어가는 숫자(ex. 100.1)를 대입할 경우 컴파일 오류가 발생한다.
32bit 운영체제에서 32bit Int이고, 64bit 운영체제에서 64bit Int이다.

// 02-Int
var someInt : Int = 3
someInt = 2+8
someInt = 10.4 // error

UInt

UInt 타입은 Unsigned Int의 약자로, 양의 정수 타입의 데이터를 모두 담을 수 있다.
Int 변수를 UInt 변수에 대입하면 컴파일 에러가 발생할 수 있다.
32bit 운영체제에서 32bit UInt이고, 64bit 운영체제에서 64bit UInt이다.

// 03-UInt
var someUInt : UInt = 3
someUInt = -1 // error

Float과 Double

Float은 single-precision(단정밀도)의 실수 데이터를 담을 수 있고,
Double은 double-precision(배정밀도) 실수 데이터를 담을 수 있다.
외부 블로그 - 단정밀도와 배정밀도에 관한 설명
서로 다른 타입끼리는 대입을 할 수 없어서 대입을 하려고 하면 에러가 발생한다!

// 04-Float-and-Double
var someFloat : Float = 1.2345
var someDouble : Double = 1.2345678
someDouble = someFloat

Character

문자를 담을 수 있는 타입으로 유니코드로 된 데이터라면 모두 담을 수 있지만
문자열 데이터는 대입이 불가능하다. -> String으로 담을 수 있다!

// 05-Character
var hangul : Character = "ㄱ"
var emoji : Character = "🥰"

String

문자열을 담을 수 있는 타입이다.
문자열끼리 더해서 새로운 문자열을 만드는 것도 가능하다.
하지만 Character형과는 결합이 되지 않는다.

// 06-String
var someString : String = "야!"
print(someString)
someString += " "+"너 뭐라고 했냐?"
print(someString)
someString += "ㅋ"
print(someString)
someString += emoji
print(someString)

// 밖에서 들려서..

String 타입은 여러 줄을 넣을 수 있도록 지원한다.
여러 줄을 넣고 싶다면 """를 처음과 끝에 달아주면 된다.
단, """를 달고 줄바꿈하여 문자열을 쓰고 줄바꿈하고 """를 해주어야 한다.

 var longString : String = """
제가 LA에 있을때는 말이죠 
정말 제가 꿈에 무대인 메이저리그로 진출해서 
가는 식당마다 싸인해달라 기자들은 항상 붙어다니며 취재하고 
제가 그 머~~ 대통령이 된 기분이였어요 
그런데 17일만에 17일만에 마이너리그로 떨어졌어요 
못던져서 그만두고 그냥 확 한국으로 가버리고 싶었어요 
그래서 집에 가는길에 그 맥주6개 달린거 있잖아요 
맥주6개 그걸 사가지고 집으로 갔어요 
그전에는 술먹으면 야구 못하는줄 알았어요 그냥 한국으로 가버릴려구....
"""
profile
아자아잣

0개의 댓글