引擎 HINT
INDEX_OVERFLOW
设置索引溢出的行为,可选的行为有:throw
、null
、near
,默认为:near
选项值 | 默认 | 含义 |
---|---|---|
throw | 当遇到索引溢出情况时严格的抛出 ArrayIndexOutOfBoundsException 异常 | |
null | 当遇到索引溢出情况时返回 null 。 | |
near | 是 | 当遇到索引溢出情况时取最近的元素。 例:正向索引溢出: list[100] ,取最后一个、反向索引溢出:list[-100] ,取第一个 |
MAX_DECIMAL_DIGITS
最大保留的小数位数,默认为:20
超出该范围将会根据 NUMBER_ROUNDING
选项指定的舍入模式进行舍入,默认是:四舍五入
。
MIN_DECIMAL_WIDTH
浮点数计算使用的最小数值宽度,可选值有:float
、double
、big
。默认为:double
选项值 | 默认 | 含义 |
---|---|---|
float | 使用 float 类型,作为默认数值宽度。 | |
double | 是 | 使用 double 类型,作为默认数值宽度。 |
big | 使用 java.math.BigDecimal 类型,作为默认数值宽度。 |
MIN_INTEGER_WIDTH
整数数计算使用的最小数值宽度,可选值有:byte
、short
、int
、long
、big
。默认为:int
选项值 | 默认 | 含义 |
---|---|---|
byte | 使用 byte 类型,作为默认数值宽度。 | |
short | 使用 short 类型,作为默认数值宽度。 | |
int | 是 | 使用 int 类型,作为默认数值宽度。 |
long | 使用 long 类型,作为默认数值宽度。 | |
big | 使用 java.math.BigInteger 类型,作为默认数值宽度。 |
NUMBER_ROUNDING
小数的舍入模式,参考 RoundingEnum
定义的舍入模式(一共八种),默认为:四舍五入
。详细配置参考:RoundingEnum
枚举。
选项值 | 默认 | 含义 |
---|---|---|
UP | 向远离零的方向舍入。舍弃非零部分,并将非零舍弃部分相邻的一位数字加一 | |
DOWN | 向接近零的方向舍入。舍弃非零部分,同时不会非零舍弃部分相邻的一位数字加一,采取截取行为 | |
CEILING | 向正无穷的方向舍入。如果为正数,舍入结果同 ROUND_UP 一致;如果为负数,舍入结果同 ROUND_DOWN 一致注意:此模式不会减少数值大小 | |
FLOOR | 向负无穷的方向舍入。如果为正数,舍入结果同 ROUND_DOWN 一致;如果为负数,舍入结果同 ROUND_UP 一致注意:此模式不会增加数值大小 | |
HALF_UP | 是 | 四舍五入 向 最接近 的数字舍入,如果与两个相邻数字的距离相等,则为向上舍入的舍入模式 注意:如果舍弃部分 >= 0.5,则舍入行为与 ROUND_UP 相同;否则舍入行为与 ROUND_DOWN 相同 |
HALF_DOWN | 五舍六入 向 最接近 的数字舍入,如果与两个相邻数字的距离相等,则为向下舍入的舍入模式 注意:如果舍弃部分 > 0.5,则舍入行为与 ROUND_UP 相同;否则舍入行为与 ROUND_DOWN 相同 | |
HALF_EVEN | 向 最接近 的数字舍入,如果与两个相邻数字的距离相等,则相邻的偶数舍入 如果舍弃部分左边的数字奇数,则舍入行为与 ROUND_HALF_UP 相同;如果为偶数,则舍入行为与 ROUND_HALF_DOWN 相同。注意:在重复进行一系列计算时,此舍入模式可以将累加错误减到最小。此舍入模式也称为 银行家舍入法,主要在美国使用。 四舍六入,五分两种情况,如果前一位为奇数,则入位,否则舍去。 | |
UNNECESSARY | 断言请求的操作具有精确的结果,因此不需要舍入 如果对获得精确结果的操作指定此舍入模式,则抛出 ArithmeticException |