정수형은 소수점이 없는 정수 값을 저장하는 자료형입니다. Swift는 두 가지 주요 정수형을 제공합니다
var age: Int = 30
var count: UInt = 50
플랫폼에 따른 Int의 최댓값(64비트 환경이라면 Int64의 최댓값) 이상 UInt 최댓값 미만을 사용하게 되는 경우 이외 에는, UInt보다는 Int 타입을 사용하는 것이 권장된다.
예를 들어 64비트의 환경이라면 Int64의 최댓값과 UInt64의 최댓값 사이의 값을 사용하는 경우 이외에 정수 타입의 값을 변수에 담고자 할 때는 Int 타입을 사용하는것이 좋다.
그리고 양수만 사용한다고 해서 굳이 UInt를 고집할 이유가 없다. Swift는 데이터 타입에 굉장히 엄격한 언어이다. 그렇기 때문에 같은 정수라고 해도 Int와 UInt는 완전히 다른 타입으로 인식한다.
따라서 코드 안에 Int와 UInt 두 타입 모두 사용하려면 정수 타입의 변수끼리도 값을 교환할 때 많은 지원을 소모할 수도 있다.
Float와 Double은 흔히 우리가 말하는 소수점 자리가 있는 수 이죠. swift에는 64비트 부동소수를 표현하는 Double과 32비트 부동 소수를 표현하는 Float가 있습니다.
- 임의의 수 만들기
- Swift 4.2 버전부터 임의의 수를 만드는 random(in:) 메서드가 추가되었습니다. 정수, 실수 모두 임의이 수를 만들 수 있습니다.
Int.random(in: -100...100) / UInt.random(in: 1...30) / Float.random(in: -0.6...-1.4)
var pi: Float = 3.14
var precisePi: Double = 3.14159265359
var myInt = 1
var myDouble = 1.0
코드를 보면 둘 다 숫자 1을 포함하지만, 전자는 Int이고 후자는 Double입니다.
var total = myInt + myDouble
위의 함수는 성립이 불가하다 왜일까?
우리는 둘 다 '1 + 1.0' 이 '2'가 될 것이라는 것을 알 수 있지만,
double은 변수(var)이므로 '1.1' 또는 '3.5' 또는 '다른 것'으로 수정할 수 있습니다.
위의 함수가 성립되지 않는 이유
1. 타입 안정성(Type Safety): Swift는 타입이 명확하고 일치해야 하며, 이를 통해 코드의 안정성을 보장합니다.
2. 정확성 보장: 정수형과 부동 소수점은 내부적으로 다른 방식으로 저장되므로, 이를 혼합하면 값의 정확성이 저하될 수 있습니다.
var boolean: Bool = false
boolean.toggle() // false -> ture
let MyNameIsJoohee: Bool = true
let MyNameIsSubin: Bool = false
print("나의 이름은 주희 입니까? : \(MyNameIsJoohee)") // true
print("나의 이름은 수빈 입니까? : \(MyNameIsSubin)) // false
문자형은 개별 문자 또는 문자열 데이터를 저장하는 자료형입니다.
var letter: Character = "A"
-String은 문자의 나열, 즉 문자열
var greeting: String = "Hello, Swift!"
👆 클릭하여 링크로 이동하여 자세히 확인 가능