DataRow舍入模式(四舍五入/五舍六入/四舍六入 五留双/银行家舍入法)

最后更新:2023-10-18 20:11:22 | 状态:未完成
    /**
     * 舍入
     * @param target 结果保存位置,如果与key一致则覆盖原值
     * @param key 属性
     * @param scale 小数位
     * @param mode 舍入 参考BigDecimal
     * ROUND_UP=0 舍入远离零的舍入模式 在丢弃非零部分之前始终增加数字(始终对非零舍弃部分前面的数字加 1) 如:2.36 转成 2.4
     * ROUND_DOWN=1 接近零的舍入模式 在丢弃某部分之前始终不增加数字(从不对舍弃部分前面的数字加1,即截短). 如:2.36 转成 2.3
     * ROUND_CEILING=2 接近正无穷大的舍入模式 如果 BigDecimal 为正,则舍入行为与 ROUND_UP 相同 如果为负,则舍入行为与 ROUND_DOWN 相同 相当于是 ROUND_UP 和 ROUND_DOWN 的合集
     * ROUND_FLOOR=3 接近负无穷大的舍入模式 如果 BigDecimal 为正,则舍入行为与 ROUND_DOWN 相同 如果为负,则舍入行为与 ROUND_UP 相同 与ROUND_CEILING 正好相反
     * ROUND_HALF_UP=4 四舍五入
     * ROUND_HALF_DOWN=5 五舍六入
     * ROUND_HALF_EVEN=6 四舍六入 五留双(银行家舍入法) 
        如果舍弃部分左边的数字为奇数,则舍入行为与 ROUND_HALF_UP 相同(四舍五入)
        如果为偶数,则舍入行为与 ROUND_HALF_DOWN 相同(五舍六入)
        如:1.15 转成 1.2,因为5前面的1是奇数;1.25 转成 1.2,因为5前面的2是偶数
     * ROUND_UNNECESSARY=7 断言请求的操作具有精确的结果,因此不需要舍入 如果对获得精确结果的操作指定此舍入模式,则抛出 ArithmeticException
     * @return DataRow
     */
    public DataRow round(String target, String key, int scale, int mode)

    public DataRow round(String key, int scale, int mode)

首页 最近更新 搜索 提交 回复