String
소유한 UTF-8 버퍼
힙의 바이트를 소유하며 늘리거나 바꿀 수 있다.
String과 &str은 소유 관계를, bytes·chars·grapheme은 같은 UTF-8 텍스트를 해석하는 단위를 설명한다.
String
힙의 바이트를 소유하며 늘리거나 바꿀 수 있다.
&str
다른 곳의 문자열 데이터를 소유권 이동 없이 바라본다.
bytes()
UTF-8 인코딩의 실제 저장 단위를 순회한다.
chars()
Rust의 char 단위이며 화면의 글자 수와 다를 수 있다.
grapheme
여러 스칼라가 한 글자로 보일 수 있어 별도 처리가 필요하다.
판단 순서 소유가 필요한지 먼저 정하고, 그다음 연산의 단위를 고른다. 숫자 인덱싱은 이 단위가 모호하므로 허용되지 않으며, 슬라이스는 유효한 UTF-8 경계에서만 만든다.