Substring이란?
부분 문자열. 즉, 하나의 문자열(String)에서 특정 범위의 문자열을 의미한다.
str 상수에 문자열 "May"를 저장한다.
uc 상수에 uppercased() 함수를 통해 str 문자열을 모두 대문자로 변환한다. -> 타입을 print해보면, 그대로 String 타입이다!
sub 상수에 prefix 함수를 통해 str 문자열 처음부터 2자리를 저장한다. -> 타입을 print 해보면, Substring이라는 타입이 출력된다!
어떤 차이가 있을까??
str == "May"
uc == "MAY"
sub == "Ma"
uc의 경우에는, 새로운 메모리에 값을 저장한다.
sub의 경우에는, str 메모리를 공유하여 원하는 값만 가리킨다.
- Substring 사용 이유
- 메모리 절약
- 원본 문자열의 메모리를 공유하기 때문! (Swift 4부터 적용)
- 새로운 메모리 공간을 사용하지 않고, 원본 문자열의 메모리를 공유하면서 해당하는 부분의 문자만 가리킨다.
- Substring의 문자열을 변경하면 해당 시점에 새로운 문자열이 생성된다.
'iOS' 카테고리의 다른 글
Swift ;; Array(배열) 알아보기 (0) | 2022.09.15 |
---|---|
Swift ;; split 와 components 차이 알아보기 (0) | 2022.09.14 |
Swift ;; 상속(Inheritance) (0) | 2022.04.26 |
Swift ;; 백틱(`) 사용하기 (2) | 2022.04.23 |
Swift ;; 함수(Function) (0) | 2022.04.22 |