궁금한 내용을 검색해보세요!
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
서근 개발노트
티스토리에 팔로잉
SWIFT/Grammar

Swift : 기초문법 [Double / Float / Booleans]

서근
QUOTE THE DAY

-
Written by SeogunSEOGUN

반응형

본 게시글은 yagom님의 Swift 프로그래밍 3판을 참고하여 작성되었습니다.

 

Bool

Bool은 불리언 타입입니다. 불리언 타입은 true 또는 false만 값으로 가집니다.

var boolean: Bool = false
boolean.toggle() // false -> ture

let MyNameIsSeogun: Bool = true
let MyNameIsSinji: Bool = false

print("나의 이름은 서근 입니까? : \(MyNameIsSeogun)") // true
print("당신의 이름은 민지 입니까? : \(MyNameIsSinji)) // false

Float와 Double

FloatDouble은 부동 소수점을 사용하는 실수며 부동소수 타입이라고 합니다. 흔히 우리가 말하는 소수점 자리가 있는 수 이죠. 스위프트에는 64비트 부동소수를 표현하는 Double과 32비트 부동 소수를 표현하는 Float가 있습니다.

 

64비트 환경에서 Double은 최소 15자리의 십진수를 표현할 수 있는 반면, Float는 6자리의 숫자까지만 표현이 가능합니다. 필요에 따라 둘 중 하나를 선택하여 사용하면 되는데 만약 무엇을 사용해야할지 모른다면 Double을 사용하는것이 좋습니다.

var FloatValue: Float = 1.2345678910
var DoubleValue: Double = 1.2345678910

print("FloatValue는 : \(FloatValue), Double은 : \(DoubleValue)")
//FloatVlaue는 : 1.2345679, Double은 : 1.234567891
//FloatVlaue는 9에서 짤리지만, Double은 모든 소수점을 다 보여준다.

FloatValue = 123.456

print(FloatValue)

TIP
 
 

임의의 수 만들기
Swift 4.2 버전부터 임의의 수를 만드는 random(in:) 메서드가 추가되었습니다. 정수, 실수 모두 임의이 수를 만들 수 있습니다.
Int.random(in: -100...100) / UInt.random(in: 1...30) / Float.random(in: -0.6...-1.4)

Double과 Booleans

Swift의 다른 두 가지 기본 데이터 유형은 doublebooleans이며 많이 사용하게 됩니다.

"Double"은  "double-precision floating-point number(배정 밀도 부동 소수점 숫자)"의 줄임말이며, '38.1' 또는 '3.141592654'와 같은 분수 값을 보유하고 있다는 멋진 표현입니다. 분수로 변수를 만들 때마다 Swift는 자동으로 해당 변수에 Double유형을 제공합니다.

var pi = 3.141

DoubleInt(정수)와 다르며 실수로 혼합할 수 없습니다.

 

Bool(불리언)의 경우 훨씬 더 간단합니다.

 

true 또는 false를 유지하고, Swift는 값으로 true 또는 false가 할당된 모든 변수에 자동으로 부울 유형을 할당합니다.

var awesome = true

Doubles과 Integers가 모두 필요한 이유

Swift는 코드에 숫자를 저장하는 여러 가지 방법을 제공하며 다양한 문제를 해결하도록 설계되었습니다. 하지만 Swift는 그 방법들을 모두 섞을 수는 없습니다. 그렇게 하면 100% 문제가 발생하기 때문입니다. 우리가 사용할 두 가지 주요 숫자 유형은 integer(Int)double입니다. integer(Int)는 0, 1, -100 및 6500만과 같은 정수를 보유하는 반면 double은 0.1, -1.001 및 3.141592 654와 같은 10 진수를 보유합니다.

var myInt = 1
var myDouble = 1.0

코드를 보면 둘 다 숫자 1을 포함하지만, 전자는 Integer이고 후자는 double입니다. 둘 다 숫자 1을 포함한다면 왜 그것들을 합할 수 없는지 궁금합니다. 

 

var total = myInt + myDouble이라고 작성할 수 없을까요?

 

이유는 Swift가 안전하게 플레이하고 있다는 것입니다. 우리는 둘 다 '1 + 1.0' 이 '2'가 될 것이라는 것을 알 수 있지만, double은 변수(var)이므로 '1.1' 또는 '3.5' 또는 '다른 것'으로 수정할 수 있습니다. 

 

Swift는 doubleInteger를 추가해서  double에서 0.1 또는 0.5를 잃을 수 있기 때문에 안전하다고 생각하지 않아서 이것이 허용되지 않는다는 것입니다.

 

Double and Booleans TEST: 문제를 풀려면 이곳을 클릭해주세요.

 

 

읽어주셔서 감사합니다🤟

 


잘못된 내용이 있으면 언제든 피드백 부탁드립니다.


서근


위처럼 이미지 와 함께 댓글을 작성할 수 있습니다.