Trait core::fmt::UpperExp

1.0.0 · source ·
pub trait UpperExp {
    // Required method
    fn fmt(&self, f: &mut Formatter<'_>) -> Result;
}
Expand description

E 格式。

UpperExp trait 应该使用大写的 E 以科学计数法格式化其输出。

有关格式化程序的更多信息,请参见 模块级文档

Examples

f64 的基本用法:

let x = 42.0; // 42.0 是 '4.2E1' 的科学计数形式

assert_eq!(format!("{x:E}"), "4.2E1");
Run

在类型上实现 UpperExp

use std::fmt;

struct Length(i32);

impl fmt::UpperExp for Length {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        let val = f64::from(self.0);
        fmt::UpperExp::fmt(&val, f) // 委托 f64 的实现
    }
}

let l = Length(100);

assert_eq!(
    format!("l in scientific notation is: {l:E}"),
    "l in scientific notation is: 1E2"
);

assert_eq!(
    format!("l in scientific notation is: {l:05E}"),
    "l in scientific notation is: 001E2"
);
Run

Required Methods§

source

fn fmt(&self, f: &mut Formatter<'_>) -> Result

使用给定的格式化程序格式化该值。

Implementors§

source§

impl UpperExp for f32

source§

impl UpperExp for f64

1.42.0 · source§

impl UpperExp for i8

1.42.0 · source§

impl UpperExp for i16

1.42.0 · source§

impl UpperExp for i32

1.42.0 · source§

impl UpperExp for i64

1.42.0 · source§

impl UpperExp for i128

1.42.0 · source§

impl UpperExp for isize

1.42.0 · source§

impl UpperExp for u8

1.42.0 · source§

impl UpperExp for u16

1.42.0 · source§

impl UpperExp for u32

1.42.0 · source§

impl UpperExp for u64

1.42.0 · source§

impl UpperExp for u128

1.42.0 · source§

impl UpperExp for usize

source§

impl<T: ?Sized + UpperExp> UpperExp for &T

source§

impl<T: ?Sized + UpperExp> UpperExp for &mut T