VesselWheel

[SwiftUI] Type의 성격 중 Type Safety 본문

Xcode Study

[SwiftUI] Type의 성격 중 Type Safety

JasonYang 2023. 4. 24. 20:42

import UIKit

 

// Type Safety

// 적절한 type 으로 값을 처리하기 위해서

// type을 엄격하게 지킴

 

// 지정한 type에 맞는 값만 할당해야 함

// let str1: String = 123

let str1: String = "123"

 

// Int type 변수에 실수를 할당하지 못함

// let num1: Int = 3.14

 

// num2 나 num3 나 모두 Int type

// 이지만 값을 저장하는 공간의 크기가 달라서 num2 를 num3에 할당하지 못함

let num2 = 23

type(of: num2)

// let num3: Int8 = num2

 

let num4 = 12

let num5 = 23.45

// Int type과 Double type을

// 같이 연산하지 못함

// let result = num4 + num5

 

let rate = 2.34

let amount = 10_000_000

// Int type과 Double type을

// 같이 연산하지 못함

// type을 같게 해 주어야 함

// let result = rate * amount

// Double(amount) : Int type 인

// amount 를 Double type 으로 형변환함

let result = rate * Double(amount)

type(of: result)

 

// 결괏값을 Int type 으로 형변화하기

// result : Double --> Int

Int(result)

 

Int(rate * Double(amount))

 

// rate 는 Double type 으로서

// 소숫점 이하 값을 표현할 수 있는데

// 이를 Int type 으로 형변환하면

// 소숫점 이하 값을 표현하지 못하는

// 형태가 되어서 정수부분만 표현함

Int(rate) * amount