VesselWheel

[SwiftUI] Type 의 별칭 == Typealias 본문

Xcode Study

[SwiftUI] Type 의 별칭 == Typealias

JasonYang 2023. 4. 24. 20:45

import UIKit

 

// Type

// typealias 타입별칭 = 원래타입

 

let latitude: Double = 45.68

let longitude: Double = 87.21

type(of: latitude)

type(of: longitude)

 

typealias Coordinate = Double

let lat: Coordinate = 12.34

let lon: Coordinate = 56.78

type(of: lat)

type(of: lon)

 

 

// 연산자 : operator

 

// 일항(unary)연산자

// 이항(binary)연산자

// 삼항(ternary)연산자

//   ㄴ 값1 ? 값2 : 값3

 

// 연산자 우선순위

// 산술연산자 -> 비교연산자 -> 논리연산자

 

// 연산의 방향 : 왼쪽 -> 오른쪽

//  할당연산자 : 오른쪽 -> 왼쪽

 

// 덧셈연산자

// 일항연산자로 사용하는 경우

// +(양수) / -(음수)

let num1 = 10

 

+num1

-num1

 

// +=(증가연산자) / -=(감소연산자)

var num2 = 10

num2 += 1

num2 = num2 + 1

num2 -= 1

num2 = num2 - 1

 

num2 *= 2

num2 = num2 * 2

 

num2 /= 2

num2 = num2 / 2

 

// 이항연산자

var num3 = 10

var num4 = 8

var result = num3 + num4

result = num3 - num4

result = num3 * num4

 

// 10 나누기 8 은 1.25 이지만

// num3, num4 는 Int type 이라서

// 소숫점 이하를 표현하지 못함

result = num3 / num4

 

let num5 = Double(num3)

let num6 = Double(num4)

var result2: Double

result2 = num5 / num6

 

// 나머지 연산자 (remainder operator)

//           (modulo operator)

 

// 몫

result = num3 / num4

 

// 나머지

result = num3 % num4

 

// 실수에서 나머지 연산하는 경우

// truncatingRemainder() 를 사용함

num5.truncatingRemainder(dividingBy: num6)

 

// Overflow

// 지정한 type 보다 큰 값을 할당할 수 없음

// let number: Int8 = 9 * 9 * 9

let number: Int = 9 * 9 * 9