본문 바로가기
iOS/Swift

[Swift] 변수(var)와 상수(let)

by 혜모리 2022. 11. 4.
728x90

변수와 상수를 쉽게 얘기하면 값을 담는 그릇입니다.

변수와 상수는 데이터 주소를 메모리에 임시로 저장해서 언제든 효율적으로 꺼내 사용할 수 있게 해줍니다.

물론 둘 다 type safe하기 때문에 처음 선언한 타입과 다른 타입의 값은 할당할 수 없습니다.

 

1. 변수

  • 값을 저장하는 공간, 변수에 할당한 값은 언제든 변경 가능합니다.
  • 형식: var 변수이름: 데이터타입 = 값
  • 데이터 타입은 할당된 초기 값을 보고 타입이 명확하면 swift가 타입추론을 할 수 있어 생략이 가능합니다.
var myName: String = "hyemory"

print(myName) // "hyemory"
myName = "hyemorrrrrrr"
print(myName) // "hyemorrrrrrr"
// 값을 담는대로 변경할 수 있다.

 

2. 상수

  • 값을 저장하는 공간, 상수에 할당한 값은 이후 변경이 불가합니다. (변경 시 컴파일 에러가 납니다.)
  • 형식: let 상수이름: 데이터타입 = 값
  • 데이터 타입은 할당된 초기 값을 보고 타입이 명확하면 swift가 타입추론을 할 수 있어 생략이 가능합니다.
let myName: String = "hyemory"

print(myName) // "hyemory"
myName = "hyemorrrrrrr"
// 컴파일 에러: "cannot assign to value: 'myName' is a 'let' constant"

🚩 var가 있는데 왜 let을 사용할까요?

변하면 안되는 값을 변경하는 실수를 막아줄 수 있습니다.

 

 

728x90
반응형

'iOS > Swift' 카테고리의 다른 글

[Swift] 주석과 데이터 타입  (0) 2022.11.07
[Swift] 이름 짓기(Naming)  (2) 2022.11.06
[Swift] print 함수와 문자열 보간법  (0) 2022.11.06
[Swift] 함수(func)와 반복문(for-in)  (0) 2022.11.03
[Swift] 스위프트의 특징  (0) 2022.11.02

댓글