1
문자열 개념
String은 UTF-8 바이트 시퀀스를 저장하므로 문자 수와 바이트 수가 항상 같지 않습니다.
Rust 문자열은 UTF-8 바이트 저장과 소유권 규칙이 함께 작동합니다. `String`은 수정 가능한 소유 버퍼이고, `&str`은 UTF-8 조각을 빌려 보는 슬라이스입니다.
String과 문자열 슬라이스가 UTF-8 데이터를 저장하고 다루는 방식을 확인합니다.
String은 UTF-8 바이트 시퀀스를 저장하므로 문자 수와 바이트 수가 항상 같지 않습니다.
예제 7-18에 표시된 것처럼 + 연산자를 사용하는 것이 한 가지 방법입니다. 예제 7-18은 + 연산자로 두 String 값을 하나의 새로운 String 값으로 합치는 흐름을 보여 줍니다.
String 값은 push_str, push, +, format!처럼 소유권과 할당 비용이 서로 다른 방식으로 갱신합니다.
push_str 메서드는 문자열 슬라이스를 받으므로 인수의 소유권을 가져오지 않고 기존 String 뒤에 내용을 붙입니다.