🔥 문자열 가변성

237자
4분

Swift는 문자열이 변할 수 있는지 여부를 변수 또는 상수에 할당하는 방식으로 지정할 수 있어요.

  • 변수에 할당된 문자열은 수정(변경)할 수 있습니다.
  • 상수에 할당된 문자열은 수정할 수 없어요.

먼저, 변수에 문자열을 할당하고 수정하는 예제를 살펴볼까요?

swift
var variableString = "Horse" // 변수 variableString에 "Horse" 할당
variableString += " and carriage" // variableString에 " and carriage" 추가
// variableString은 이제 "Horse and carriage"가 됩니다.
swift
var variableString = "Horse" // 변수 variableString에 "Horse" 할당
variableString += " and carriage" // variableString에 " and carriage" 추가
// variableString은 이제 "Horse and carriage"가 됩니다.

위 코드에서는 var 키워드를 사용하여 variableString이라는 변수를 선언하고, 초기값으로 "Horse"를 할당했습니다. 그 다음 줄에서는 += 연산자를 사용하여 variableString" and carriage"를 추가하였죠. 이렇게 변수에 할당된 문자열은 자유롭게 수정할 수 있습니다.

반면에, 상수에 할당된 문자열은 어떨까요?

swift
let constantString = "Highlander" // 상수 constantString에 "Highlander" 할당
constantString += " and another Highlander" // 컴파일 에러 발생!
// 상수 문자열은 수정할 수 없습니다.
swift
let constantString = "Highlander" // 상수 constantString에 "Highlander" 할당
constantString += " and another Highlander" // 컴파일 에러 발생!
// 상수 문자열은 수정할 수 없습니다.

위 코드에서는 let 키워드를 사용하여 constantString이라는 상수를 선언하고, 값으로 "Highlander"를 할당했어요. 그리고 다음 줄에서 += 연산자를 사용하여 constantString" and another Highlander"를 추가하려고 했지만, 상수 문자열은 수정할 수 없기 때문에 컴파일 에러가 발생하게 됩니다.

이렇게 Swift에서는 변수와 상수를 사용하여 문자열의 가변성을 쉽게 제어할 수 있답니다. 문자열을 수정해야 한다면 변수를 사용하고, 수정이 필요 없는 문자열이라면 상수를 사용하는 것이 좋겠죠?

문자열 가변성은 프로그램의 안정성과 효율성에 영향을 줄 수 있는 중요한 개념이에요. 상수 문자열은 컴파일 시점에 최적화될 수 있어 메모리 사용량과 실행 속도 면에서 이점이 있습니다. 반면에 변수 문자열은 런타임에 수정될 수 있어 유연성을 제공하죠.

이 내용을 기억하고, 상황에 맞게 변수와 상수를 적절히 활용한다면 더욱 효과적인 Swift 코드를 작성할 수 있을 거예요!

YouTube 영상

채널 보기
바이펑터란? | 프로그래머를 위한 카테고리 이론
Pro펑터, 입력과 출력을 동시에 다루는 펑터 | 프로그래머를 위한 카테고리 이론
NestJS 커스텀 예외 만들기 - 에러 처리 깔끔하게 하는 법 | NestJS 가이드
앨런 튜링이 들려주는 튜링 테스트와 보편 기계 이야기
Const 펑터 - 아무것도 안 하는 펑터가 필요한 이유 | 프로그래머를 위한 카테고리 이론
매번 ValidationPipe 복붙하세요? NestJS 전역 파이프로 한 번에 해결하기 | NestJS 가이드
NestJS 파이프가 뭔가요? 컨트롤러를 보호하는 방법 | NestJS 가이드
Zod로 스키마 유효성 검사 구현하기 | NestJS 가이드