枚举

enum OverflowStrategy

public enum OverflowStrategy {
    | saturating
    | throwing
    | wrapping
}

溢出策略枚举类,共包含 3 种溢出策略。BigInt 类型、Decimal 类型转换为整数类型时,允许指定不同的溢出处理策略。

saturating

saturating

功能:出现溢出,当前值大于目标类型的 MAX 值,返回目标类型 MAX 值,当前值小于目标类型的 MIN 值,返回目标类型 MIN 值。

throwing

throwing

功能:出现溢出,抛出异常。

wrapping

wrapping

功能:出现溢出,高位截断。

enum RoundingMode

public enum RoundingMode {
    | CEILING
    | DOWN
    | FLOOR
    | HALF_EVEN
    | HALF_UP
    | UP
}

舍入规则枚举类,共包含 6 中舍入规则。除包含 IEEE 754 浮点数规定约定的 5 种舍入规则外,提供使用较多的 “四舍五入” 舍入规则。

十进制数UPDOWNCEILINGFLOORHALF_UPHALF_EVEN
7.5878788
4.5545454
-1.1-2-1-1-2-1-1
-4.5-5-4-4-5-5-4
-7.5-8-7-7-8-8-8

CEILING

CEILING

功能:向正无穷方向舍入。

DOWN

DOWN

功能:向靠近零的方向舍入。

FLOOR

FLOOR

功能:向负无穷方向舍入。

HALF_EVEN

HALF_EVEN

功能:四舍六入五取偶,又称 “银行家舍入”。

HALF_UP

HALF_UP

功能:四舍五入。

UP

UP

功能:向远离零的方向舍入。