在数据库中查询一些资料,再对excel的时间进行一些处理,最后将处理过的内容放到一个新的数据库中 由于是单独的java demo,为了方便测试,首先是对数据库进行链接,按照驱动,URL,用户名,密码,和statement...不同构造函数的区别 接下来就是按照getCellValue(HSSFCell hssfCell)函数读取每行每列的数据,这里需要提到的是这个函数,可以对不同的类型进行转码 第一个case是对区分日期和真正的数字...Calendar.getInstance(); calendar.setTime(date); //转换成日期格式 下一步应该用结束时间减去worktime,在处理这里时发现,worktime可能为小数...,根据要求要四舍五入,这里运用了下面的方法 BigDecimal bigDecimal = new BigDecimal(worktime).setScale(0, BigDecimal.ROUND_HALF_UP...); 上面的0代表保留的位数,后面代表四舍五入 具体四舍五入和保留小数位数的方法可以参考,里面还有凑整等一系列的方法 http://www.cnblogs.com/xd502djj/archive
然而,我们遇到的问题是,x 的值通常不是整数,而是小数,甚至包含很多位小数。因此,直接比较 f(x) 和 g(x) 的值是不行的。我们需要找到一种方法来近似 x 的值,以便在一定误差范围内找到交点。...2、解决方案 2.1 使用容差一种简单的解决方法是使用容差。我们可以定义一个容差值,如果 f(x) 和 g(x) 之间的差值小于这个容差值,我们就认为它们相等。...测试结果如下:| 方法 | 时间 | |---|---|---| | 使用容差 | 0.1秒 | | 使用四舍五入 | 0.2秒 | | 使用十进制模块 | 1.0秒 | | 使用数值根求解算法 | 2.0...秒 |可以看出,使用容差和四舍五入的方法最快,但准确度不高。...对于要求速度优先的场景,我们使用了容差或四舍五入的方法;对于要求准确度优先的场景,我们使用了十进制模块或数值根求解算法的方法。
------------------------------------------------- 有一篇: (1)、浮点数精确计算 胜利油田三流合一项目中一直存在一个问题,就是每次报表统计的物资金额和实际的金额要差那么几分钱...当然可以,习惯上我们本能就会这样考虑,但四舍五入意味着误差,商业运算中可能意味着错误,同时Java中也没有提供保留指定位数的四舍五入方法,只提供了一个Math.round(double d)和Math.round...,因为.025距离”nearest neighbor”(.02和.03)长度是相等,向下舍入就是.02,如果是4.0251那么保留两位小数就是4.03。...这里我们提供了一个工具类,定义浮点数的加、减、乘、除和四舍五入等运算方法。以供参考。...,舍入模式采用ROUND_HALF_EVEN * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */
一般情况下,对于那些不需要准确计算精度的数字,我们可以直接使用Float和Double处理,但是Double.valueOf(String) 和Float.valueOf(String)会丢失精度。...return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).toString(); } /** * 提供精确的小数位四舍五入处理...* * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */...return b.setScale(scale, BigDecimal.ROUND_HALF_UP).doubleValue(); } /** * 提供精确的小数位四舍五入处理...* * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */
浏览器对百分比小数位的处理主要是保留2位、4位、13位或15位,为了测试是通过四舍五入还是截断处理,第一个百分比的值在第3位、5位、14位小数位取小于5的值,而第二个则取大于5的值。...浏览器 宽度的百分比保留的小数位 渲染后的宽度值保留的小数位 IE8 截断成 2 位 四舍五入成整数 IE9 截断成 2 位 四舍五入成整数 IE10 截断成 2 位 13 IE Edge 截断成 2 ... 4 位 6 QQ浏览器 7.0(Android 4.2.2) 四舍五入成 13 位 6 从测试数据可以看出: “宽度的百分比保留的小数位”方面,所有浏览器都支持小数位的百分比宽度值,其中最短为2位小数位...在第二组实验中(如下面的图1),我们虽然设置了三个各自相差0.1px的元素,但在亚像素渲染中有所偏差,box2-1与box2-2相差0.109375px,而box2-3与box2-2相差0.09375px...IE8、IE9对小于1像素的部分是会进行取整处理的,因此舍弃前后的整数值是621和620,那将会出现1像素的误差。
import java.math.BigDecimal; /** * 由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供精 * 确的浮点数运算,包括加减乘除和四舍五入。...* @param v1 被减数 * @param v2 减数 * @return 两个参数的差 */ public static double sub(double v1,double v2){...10位,以后的数字四舍五入。...v2)); return b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue(); } /** * 提供精确的小数位四舍五入处理...* @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */ public static double round(double
double和float差,在处理庞大,复杂的运算时尤为明显。...return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).toString(); } /** * 提供精确的小数位四舍五入处理...* * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */...return b.setScale(scale, BigDecimal.ROUND_HALF_UP).doubleValue(); } /** * 提供精确的小数位四舍五入处理...* * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */
的性能比double和float差,在处理庞大,复杂的运算时尤为明显。...return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).toString(); } /** * 提供精确的小数位四舍五入处理...* * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */...return b.setScale(scale, BigDecimal.ROUND_HALF_UP).doubleValue(); } /** * 提供精确的小数位四舍五入处理...* * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */
和float差,在处理庞大,复杂的运算时尤为明显。...return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).toString(); } /** * 提供精确的小数位四舍五入处理...* * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果...return b.setScale(scale, BigDecimal.ROUND_HALF_UP).doubleValue(); } /** * 提供精确的小数位四舍五入处理...* * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果
* * @param v1 * 被加数 * @param v2 * 加数 * @return 两个参数的和 */ public static...* * @param v1 * 被减数 * @param v2 * 减数 * @return 两个参数的差 */ public static...10位,以后的数字四舍五入。 ...Double.toString(v2)); return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).doubleValue(); } /** * 提供精确的小数位四舍五入处理...* * @param v * 需要四舍五入的数字 * @param scale * 小数点后保留几位 * @return 四舍五入后的结果
double和float差,在处理庞大,复杂的运算时尤为明显。... return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).toString(); } /** * 提供精确的小数位四舍五入处理... * * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */ ... return b.setScale(scale, BigDecimal.ROUND_HALF_UP).doubleValue(); } /** * 提供精确的小数位四舍五入处理... * * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */
* * @param v1 被加数 * @param v2 加数 * @return 两个参数的和 * @author liushouyun */...* * @param v1 被减数 * @param v2 减数 * @return 两个参数的差 * @author liushouyun */...10位,以后的数字四舍五入。...return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).doubleValue(); } /** * 提供精确的小数位四舍五入处理...* * @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 * @author liushouyun
它提供以下静态方法,包括加减乘除和四舍五入: public static double add(double v1,double v2)public static double sub(double v1...其实就是将繁琐的过程进行封装,便于直接调用: import java.math.BigDecimal;/** * 由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供精 * 确的浮点数运算,包括加减乘除和四舍五入...* @param v1 被减数 * @param v2 减数 * @return 两个参数的差 */ public static double sub(double...return b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue(); } /** * 提供精确的小数位四舍五入处理...* @param v 需要四舍五入的数字 * @param scale 小数点后保留几位 * @return 四舍五入后的结果 */ public static double
b,输出这两个正整数的和,差,积,商,模(若 a > b 则输出 a - b,a / b,a % b 的值反之输出 b-a,b/a,b%a 的值,不考虑小数,请使用 int 类型) 输入描述 两个正整数...输出描述 它们的和,差,积,商,模。...描述 定义一个 int 类型变量 i, i 为由浮点数变量 d 四舍五入后的整数类型,请将转换后的i进行输出 输入描述 用户随机输入的浮点数 输出描述 四舍五入之后的整数(小数点后一位 >=5 则进一...b 变量的值 输出描述 交换后 a 变量和 b 变量的值,中间用空格隔开 示例 1 输入: 1 2 输出: 2 1 解答 先将 a、b 之和赋给 a,接着将 a 和 b 的差赋值给 b,此时 b = a...+ b - b = a,此时就交换了 a、b 的值,然后再将 a、b 的差赋值给 a,此时 a = a + b - a,此时就将 b 的值赋给了 a。
领取专属 10元无门槛券
手把手带您无忧上云