🔥 빈 문자열 초기화하기

317자
4분

프로그래밍을 하다 보면 때로는 빈 문자열을 만들어야 할 때가 있습니다. Swift에서는 빈 문자열을 생성하는 방법이 두 가지 있어요. 첫째는 리터럴을 사용하는 방법이고 둘째는 String 이니셜라이져를 사용하는 방법입니다.

빈 문자열 리터럴로 만들기

Swift에서는 빈 문자열 리터럴을 사용하여 빈 문자열을 만들 수 있습니다. 간단히 큰따옴표 두 개를 연달아 쓰면 됩니다.

var emptyString = ""  // 빈 문자열 리터럴
swift

위 코드에서 emptyString이라는 변수를 선언하고 빈 문자열 리터럴 ""을 할당했네요. 이제 emptyString은 빈 문자열을 담고 있습니다.

String 이니셜라이져로 만들기

또 다른 방법으로는 String 타입의 이니셜라이저 구문을 사용하는 것입니다. String()을 호출하면 새로운 빈 문자열 인스턴스가 생성됩니다.

var anotherEmptyString = String()  // 이니셜라이저 구문
swift

anotherEmptyString이라는 변수를 선언하고 String()으로 초기화했습니다. 이 변수 역시 빈 문자열을 담게 되었습니다.

사실 이 두 가지 방식으로 만든 빈 문자열은 서로 동일합니다. 즉, 다음과 같이 비교해보면 true가 됩니다.

if emptyString == anotherEmptyString {
    print("두 빈 문자열은 같아요!")
}
// "두 빈 문자열은 같아요!" 출력
swift

isEmpty 속성으로 빈 문자열 여부 확인하기

그렇다면 어떤 문자열이 비어있는지 아닌지 어떻게 확인할 수 있을까요? 바로 StringisEmpty 속성을 사용하면 됩니다.

if emptyString.isEmpty {
    print("emptyString은 비었어요!")
}
// "emptyString은 비었어요!" 출력
swift

isEmpty는 불리언 타입의 속성으로, 문자열이 비어있으면 true, 그렇지 않으면 false를 반환합니다. 위 코드에서는 emptyString이 빈 문자열이기 때문에 isEmptytrue가 되어 조건문 안의 코드가 실행되는 거죠.

이를 종합해보면 다음과 같은 예제를 만들 수 있겠네요.

let greeting = "Hello, world!"
let emptyGreeting = ""
 
if greeting.isEmpty {
    print("인사를 안 하셨네요.")
} else {
    print(greeting)
}
// "Hello, world!" 출력
 
if emptyGreeting.isEmpty {
    print("인사를 안 하셨네요.")
} else {
    print(emptyGreeting)
}
// "인사를 안 하셨네요." 출력
swift

첫 번째 if문에서는 greeting이 빈 문자열이 아니므로 else 블록 안의 코드가 실행되어 "Hello, world!"가 출력되고, 두 번째 if문에서는 emptyGreeting이 빈 문자열이므로 첫 번째 블록 안의 코드가 실행되어 "인사를 안 하셨네요."가 출력되는 모습입니다.

이렇게 빈 문자열을 만들고 확인하는 방법을 알아보았습니다. 프로그래밍을 하다 보면 빈 문자열을 자주 사용하게 될 텐데, 이 방법들을 잘 익혀두면 큰 도움이 될 거예요!