본문 바로가기

Programming/Swift for Beginners

[Swift] 008 Data Type - Being Explicit (자료형 - 명시적 선언) - 2 for beginners


Swift 가 변수나 상수의 타입을 추론해주는 것은 유용합니다. 개발자가 정수가 무엇인지 혹은 소수가 붙은 숫자가 무엇인지 설명하지 않아도 Swift는 그냥 알고 있습니다. 그러나 가끔 변수가 상수를 특정 타입으로 선언하고 싶을 때가 있습니다. Swift는 선언문의 일부로 타입을 알릴 수 있게 해줍니다.


변수나 상수를 특정 타입으로 선언하는 것은 콜론과 타입 이름 순서대로 넣고 그 다음에 변수나 상수 이름을 넣기만 하면 되니 매우 쉽습니다. myNewNumber를 Double 형으로 선언했고 숫자 3을 할당했습니다. 선언한 결과까지 함께 잘 보여주고 있습니다.

위의 결과에서 만약 Double을 넣지 않으면 어떻게 될까요? Swift는 할당된 내용을 평가하고 값이 Int 형이라고 결정을 내리고 나서 myNewNumber를 Int 형으로 추론하게 됩니다. 이와 같은 결과를 원하지 않을 경우, Swift의 기본적인 추론을 무시하고 우리가 원하는 대로 강제로 변수의 타입을 지정하는 것입니다.

만약 변수나 상수를 값으로 할당하지 않으면???

변수 m을 Int 형으로 선언했지만, 선언 당시 값을 할당하지 않았습니다. Swift는 REPL에 초깃값을 반드시 할당해야 한다고 지적하면서 에러를 표시합니다.

그리고 다음 행에서는 let 명령어가 abc를 Int 형으로 선언했지만, 역시 값을 할당하지 않았습니다. 그 밑의 문장을 보면 Swift가 초기값(Initial value)이 필요하다는 내용을 가리키며 에러를 보여주고 있습니다. 상수는 변하지 않는 값이기 때문에 값은 상수가 선언될 때 할당되어야 합니다.