РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
89 of 1245 menu

Метод parse

Метод parse преобразует строку или строковый срез в другой тип данных. Он возвращает значение типа Result, которое содержит либо успешно преобразованное значение, либо ошибку, если преобразование невозможно. Параметров метод не принимает, однако тип, в который нужно преобразовать строку, указывается явно через аннотацию типа или через turbofish-синтаксис.

Синтаксис

str.parse::<T>()

Пример

Давайте преобразуем строку "12345" в число типа i32:

fn main() { let res: i32 = "12345".parse().unwrap(); println!("{}", res); }

Результат выполнения кода:

12345

Пример

Давайте преобразуем строку "12345" в число с помощью turbofish-синтаксиса:

fn main() { let res = "12345".parse::<u32>().unwrap(); println!("{}", res); }

Результат выполнения кода:

12345

Пример

Давайте попробуем преобразовать строку "abcde" в число типа i32 и обработаем ошибку:

fn main() { let res = "abcde".parse::<i32>(); match res { Ok(n) => println!("Ok: {}", n), Err(e) => println!("Err: {}", e), } }

Результат выполнения кода:

Err: invalid digit found in string

Пример

Давайте преобразуем строку "3.14" в число типа f64:

fn main() { let res = "3.14".parse::<f64>().unwrap(); println!("{}", res); }

Результат выполнения кода:

3.14

Пример

Давайте преобразуем строку "true" в значение типа bool:

fn main() { let res = "true".parse::<bool>().unwrap(); println!("{}", res); }

Результат выполнения кода:

true

Смотрите также

  • типаж FromStr,
    который лежит в основе метода parse
  • типаж From,
    который выполняет преобразование без возможности ошибки
  • типаж TryFrom,
    который выполняет преобразование с возможностью ошибки
  • метод to_string,
    который преобразует значение в строку
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить