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

Трейт LowerExp

Трейт LowerExp позволяет форматировать значение в нижнем экспоненциальном виде (например, 1.23e4) с помощью плейсхолдера {:e} в макросах форматирования, таких как format!, println! и других. Параметром метод fmt принимает ссылку на Formatter, который управляет процессом форматирования и содержит настройки ширины, точности и выравнивания.

Синтаксис

impl LowerExp for Type { fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { // implementation } }

Для использования готовых реализаций достаточно применить плейсхолдер {:e} в строке форматирования.

Пример

Давайте отформатируем число с плавающей точкой в нижнем экспоненциальном виде:

fn main() { let res = format!("{:e}", 12345.678); println!("{}", res); }

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

"1.2345678e4"

Пример

Давайте отформатируем целое число в нижнем экспоненциальном виде:

fn main() { let res = format!("{:e}", 12345); println!("{}", res); }

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

"1.2345e4"

Пример

Давайте применим пользовательскую реализацию трейта LowerExp для собственной структуры:

use std::fmt; struct Point { x: f64, y: f64, } impl fmt::LowerExp for Point { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { write!(f, "({:e}, {:e})", self.x, self.y) } } fn main() { let p = Point { x: 1234.5, y: 0.000678 }; let res = format!("{:e}", p); println!("{}", res); }

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

"(1.2345e3, 6.78e-4)"

Пример

Давайте используем плейсхолдер {:e} внутри макроса println!:

fn main() { let value = 98765.4321; println!("{:e}", value); }

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

9.87654321e4

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

  • трейт UpperExp,
    который форматирует числа в верхнем экспоненциальном виде
  • трейт Display,
    который отвечает за обычное форматирование значений
  • трейт Debug,
    который отвечает за отладочное форматирование значений
  • структура Formatter,
    которая управляет процессом форматирования
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить