Метод as_str
Метод as_str возвращает строковый срез
типа &str, который ссылается на те же
данные, что и исходная строка. Метод не принимает
параметров и не выполняет копирование данных.
Он удобен, когда нужно получить именно срез
&str, а не владеющую строку String.
Синтаксис
string.as_str()
Пример
Давайте получим строковый срез из строки
"abcde" и выведем его на экран:
fn main()
{
let s = String::from("abcde");
let res = s.as_str();
println!("{}", res);
}
Результат выполнения кода:
"abcde"
Пример
Давайте получим строковый срез из строки
"12345" и проверим его длину:
fn main()
{
let s = String::from("12345");
let res = s.as_str();
println!("{}", res.len());
}
Результат выполнения кода:
5
Пример
Давайте используем as_str для передачи
строкового среза в функцию, принимающую
&str:
fn print_str(s: &str)
{
println!("{}", s);
}
fn main()
{
let s = String::from("abcde");
print_str(s.as_str());
}
Результат выполнения кода:
"abcde"