1个不稳定版本
0.1.0 | 2023年3月5日 |
---|
#1794 在 算法
11KB
189 行
🌡️ 🥶 tempconvert 🥶 🌡️
简单温度转换和类型
- 开尔文 - K - 🥶
- 摄氏度 - C - 🥵
- 华氏度 - F - 🤒
提供简单的温度转换类型。
💻 安装
在Cargo.toml中添加包以使用
[dependencies]
tempconvert = "0.1.0"
可以从整数、浮点数或String初始化
use tempconvert:: {K, C, F};
fn main() {
// create Kelvin from string by parsing
let k: K = "273".parse().unwrap();
// Gives beautified string with K
let k_string: String = k.to_string();
// Convert into celsius easily
let c1: C = k.into();
// Create Kelivin from i32
let k1: K = 273.into();
// convert to Fareinheit
let f1 = k.into::<F>();
let k2: K = 273.0.into();
let f2: F = K.into();
println!("{}", k.to_string());
println!("{}", k1.to_string());
println!("{}", k2.to_string());
println!("{}", k.into::<C>.to_string())
}
👩🏻💻🧑🏼💻 使用方法
将温度从一种单位转换为另一种单位
您可以使用元组结构体初始化温度或使用into
方法从不同类型转换。所有单位都支持从整数、浮点数和String类型进行转换
use tempconvert::{C, F, K};
fn main() {
let f1: F = 32.into();
let f2: F = 32.0.into();
let f = F(32.0);
dbg!(f);
// ouput
// F(32.0)
dbg!(f.to_string());
// output
// "32.0°F"
let c: C = f.into();
dbg!(c);
// output
// C(0.0)
let k: K = f.into();
dbg!(k);
// output
// K(273.0)
}
📝📝 使用工具将f64轻松转换为不同单位
tempconvert
有一个独立的utils模块,可以用于在不使用类型的情况下将f64转换为不同单位
use tempconvert::utils::{
c_to_f,
c_to_k,
f_to_c,
f_to_k,
k_to_c,
k_to_f
};
fn main() {
dbg!(c_to_k(0.0));
dbg!(c_to_f(0.0));
dbg!(f_to_c(32.0));
dbg!(k_to_c(273.0));
dbg!(k_to_f(273.0));
}