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

Преобразование в u8

Тип u8 представляет собой беззнаковое целое число, занимающее 8 бит и принимающее значения от 0 до 255. Преобразование в u8 выполняется с помощью трейта TryFrom, метода parse или оператора as. При использовании TryFrom преобразование возвращает Result, так как значение может не поместиться в диапазон типа u8.

Синтаксис

u8::try_from(value) value.parse::<u8>() value as u8

Пример

Давайте преобразуем число 42 типа i32 в тип u8 с помощью метода try_from:

fn main() { let num: i32 = 42; let res = u8::try_from(num); println!("{:?}", res); }

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

Ok(42)

Пример

Давайте попробуем преобразовать число 300 типа i32 в тип u8. Так как 300 больше максимального значения 255, преобразование вернёт ошибку:

fn main() { let num: i32 = 300; let res = u8::try_from(num); println!("{:?}", res); }

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

Err(TryFromIntError(()))

Пример

Давайте преобразуем строку "12345" в тип u8 с помощью метода parse:

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

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

Err(ParseIntError { kind: PosOverflow })

Пример

Давайте преобразуем число 100 типа i32 в тип u8 с помощью оператора as:

fn main() { let num: i32 = 100; let res = num as u8; println!("{}", res); }

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

100

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

  • трейт TryFrom,
    который выполняет безопасное преобразование с проверкой диапазона
  • трейт TryInto,
    который предоставляет метод try_into для преобразования в целевой тип
  • метод parse,
    который преобразует строку в число указанного типа
  • оператор as,
    который выполняет приведение примитивных типов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить