如何在Stanza中获取Int与Double类型的数值最小最大值
Stanza 中Int、Double类型数值极限的获取方式
Stanza 没有沿用 C++ 式的全局预定义宏存储类型极值,而是将数值类型绑定的极限常量直接挂载到对应类型的命名空间下,无需额外引入依赖即可直接调用。
整型(Int)的极值获取
作为Stanza默认的平台原生有符号整型,Int 类型的极限值与同平台C++的int类型完全对齐,对应常量为:
Int.MAX_VALUE:对应C++的INT_MAX,表示当前平台下Int可表示的最大有符号整数值Int.MIN_VALUE:对应C++的INT_MIN,表示当前平台下Int可表示的最小(最负)有符号整数值
浮点型(Double)的极值获取
Stanza的Double类型与IEEE 754双精度浮点数标准对齐,和C的double类型底层实现一致,相关极限常量与C宏的对应关系如下:
Double.MAX_VALUE:对应C++的DBL_MAX,表示双精度浮点数可表示的最大有限正值Double.NEGATIVE_MAX_VALUE:表示双精度浮点数可表示的最小(最负)有限值,数值上等于-Double.MAX_VALUEDouble.MIN_NORMAL:对应C++的DBL_MIN,表示双精度浮点数可表示的最小正归一化值
注意:不要照搬其他语言的常量命名习惯,Stanza中不存在名为
Double.MIN_VALUE的内置常量。部分语言会把“最小正非零值”定义为MIN_VALUE,但Stanza没有做这类语义混淆的设计,所有常量命名严格贴合数值本身的大小语义。
代码调用示例
所有核心类型常量属于Stanza标准库内置内容,无需额外导入即可直接使用,示例如下:
// 输出Int类型的极值 println(Int.MAX_VALUE) println(Int.MIN_VALUE) // 输出Double类型的相关极值 println(Double.MAX_VALUE) println(Double.NEGATIVE_MAX_VALUE) println(Double.MIN_NORMAL)
内容的提问来源于stack exchange,提问作者Bertrand Pellenard
相关产品推荐
相关产品推荐

