[ios_Swift] String Interpolation

이시영·2023년 7월 31일

오늘은 String Interpolation에 대해서 써볼까 한다.
String Interpolation 즉 문자열 보간법은 다른 타입을 문자열로 변환시키는 방법을 이야기한다.

예를 들어보자면

var str = "2022 year"
var int = 2023
str = int + " year" // error

위의 연산에서 두 변수 str 와 int 는 타입이 다르기때문에 결국 에러가 나게된다.
이 때 Int 타입인 int를 String 타입으로 바꿔줄 수 있는데 방법은 아래와 같다.

var str = "2022 year"
var int = 2023
str = String(int) + " year" 
//  2023 year

이렇게 실수(int)를 문자열로 바꿔주면 연산이 가능한데 이 방법보다 더 간단하게 int를 String으로 바꿔줄 수 있는 방법이 있는데 이를 String Interpolation이라고 한다.

var str = "2022 year"
var int = 2023
str = "\(int) year" 
//  2023 year

위의 방법이 String Interpolation이다. String Interpolation은 식을 보다 간편하게 만들어주는 장점이 있으나 formet을 세부적으로 지정 해 줄 수 없다는 단점도 가지고 있는데 예를 들자면 소수점 자리를 세세하게 설정할 수 없다.

이를 해결하기 위한 보다 상세한 포맷팅을 위해선 문자열 생성자와 초맷 지정자를 사용해야 하는데 방법은 아래와 같다.

var str = "55 percnet"
var int = 71.23
String(format: "%.4f percent", int)
// 71.2300 percent

위 코드는 int를 소수점 4자리까지 나타내준다. %.4f 부분에 int가 대입되는 것이며 여기서 숫자 4는 소수점을 몇번째자리까지 표기할 것인지를 의미한다.

이 외에도 다양하게 사용될 수 있는데


String(format: "Hello, %@", "world")
// Hello, world

String(fotmat: %d, 12)
// 12

위와 같이 문자열을 대체하는 %@와 정수를 대체하는 %d를 이용하여 다양한 결과를 만들어낼 수 있다.

0개의 댓글