Swift

[Swift] Swift의 기본 데이터 타입

효니로그 2023. 12. 29. 14:24

 

Swift의 기본 데이터 타입에는 Bool, Int, UInt, Float, Double, Character, String이 있다.

 

 

Bool

var someBool: Bool = true
someBool = false

Swift에서 Boolean type을 사용할 때는 true / false만 사용할 수 있다.

 

javascript에서는 0과 1인 정수 리터럴 값의 사용이 가능하지만

Swift에서는 정수 리터럴 값을 사용하게 되면 에러가 발생한다. (Int type error)

 

네이밍에서 타입을 파악할 수 있다면 가독성이 높아지기 때문에

Boolean값 네이밍 앞에 is 또는 has를 접두어로 붙여 사용한다.

 

is

  • is + 명사
  • is + 현재진행형 (~ing)
  • is + 형용사

is + 명사

"(무엇)인가?"라는 뜻으로 쓰인다.

var isStudent: Bool // user는 학생인가?

 

is + 현재진행형 (~ing)

"~하는 중인가?"라는 뜻으로 쓰인다.

var isExecuting: Bool // 실행 중인가?

 

is + 형용사 / ~ed(수동태)

var isEditable: Bool // 편집할 수 있는가?
var isEditing: Bool // 편집 중인가?

 

 

has

  • has + 명사 
  • has + 과거분사

has + 명사

"~를 가지고 있는가?" 

var  hasIGithubAccount: Bool // github 계정을 가지고 있는가?

 

has + 과거분사 => 현재완료

"과거에 완료된 것이 현재까지 유지가 되고 있다." "~가 유지되고 있는가?"

var hasConnected: Bool // 연결되어 있는가?

 

 


Int

Int 타입은 기본적으로 64비트 정수형 타입이다.

양수와 정수 모두를 포함한다.

Int 타입에 실수를 할당하게 되면 에러가 발생한다.

 

 


UInt

UInt는 부호가 없는 정수 즉, 양의 정수 타입이다.

음의 정수를 넣게 되면 에러가 발생한다.

 

 


Float

부동소수형 32비트 타입이다.

실수가 아닌 정수를 넣어도 크게 문제가 없다.

var someFloat: Float = 3.12
someFloat = 3

 

 


Double

부동소수형 64비트 타입이다.

실수가 아닌 정수를 넣어도 크게 문제가 없다.

var someDouble: Double = 3.12
someDouble = 3

 

Float 타입과 Double 타입 모두 실수가 아닌 정수를 넣어도 크게 문제는 없지만

정수가 저장되어 있는 변수값을 할당하게 되면 에러가 발생한다.

 

 


Character

Character 타입은 한 글자의 문자열을 표현하기 위한 타입이다.

유니코드를 사용하기 때문에 유니코드로 표현 가능한 모든 문자열을 넣어줄 수 있다.

""(큰따옴표)로 감싸야한다.

Character 타입은 한 글자 이상의 문자를 넣게 되면 String 타입으로 인식하여 에러가 발생한다.

 

Character 타입에 빈 문자열을 저장하고 싶을 경우 " " 큰따옴표 안에 하나이상의 공백을 넣어 저장해야 한다.

someCharacter = " "

 

 


String

""(큰따옴표)로 감싸야한다.

String 타입은 하나의 문자로 저장된다.

+연산자를 사용하여 문자열을 합칠 수도 있다.

var someString: String = "Hi" // "Hi"
someString = someString + " 안녕하세요" // "Hi 안녕하세요"

 

만약 String 타입에 Character타입을 넣게 되면 타입이 다르기 때문에 에러가 발생한다.

 

 

Swift에서 데이터 타입과의 자료교환은 불가능하기 때문에 주의해서 사용해야 한다.