在Java中实现两数相乘
要实现两数相乘算总额:input1.value() * input2.value()
如果直接获取到两个input值相乘,那么结果就有一点点小偏差,是因为精度缺失
$("#totalSum").val(input1.value() * input2.value());
Js代码:
//期初库存 按钮被松开时 算总额$("#OpeningInventory").blur(function(){//期初库存var openinginventory=$("#OpeningInventory").val();//商品均价var averageprice=$("#AveragePrice").val();if (openinginventory=="") {openinginventory=0;$("#OpeningInventory").val(0);}if (averageprice=="") {averageprice=0;$("#AveragePrice").val(0);}$.post("totalSum",{ openinginventory : openinginventory,averageprice : averageprice},function(data){$("#totalSum").val(data);});});
控制器代码:
// 总额@RequestMapping("/totalSum")@ResponseBodypublic double totalSum(double openinginventory, double averageprice) {BigDecimal b1 = new BigDecimal(Double.toString(openinginventory));BigDecimal b2 = new BigDecimal(Double.toString(averageprice));return b1.multiply(b2).doubleValue();}
BigDecimal加减乘除运算
加法:add()函数
减法:subtract()函数
乘法:multiply()函数
除法:divide()函数
绝对值:abs()函数
需要注意的是除法运算divide.
BigDecimal除法可能出现不能整除的情况,比如 4.5/1.3,这时会报错java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.
其实divide方法有可以传三个参数:
public BigDecimal divide(BigDecimal divisor, int scale, int roundingMode)
第一参数表示除数
第二个参数表示小数点后保留位数
第三个参数表示舍入模式,只有在作除法运算或四舍五入时才用到舍入模式
在Java中实现两数相乘相关推荐
- Java 递归解决 quot;仅仅能两数相乘的计算器计算x^yquot; 问题
Java 递归解决 "仅仅能两数相乘的计算器计算x^y" 问题 /*** 求一个数的乘方* 求x^y,y是一个正整数. 设计算器仅仅能计算两数相乘,不能一次计算n个数相乘. * 知 ...
- java输出两个整数的积_如何检查Java中的两个数字相乘是否会导致溢出?
如何检查Java中的两个数字相乘是否会导致溢出? 我想处理两个数字相乘导致溢出的特殊情况. 代码看起来像这样: int a = 20; long b = 30; // if a or b are bi ...
- Java 两数相乘保留两位小数
//两数相乘保留两位小数public static String multiply(String num1, String num2) {BigDecimal b1 = new BigDecimal( ...
- LeetCode题库整理【Java】—— 2 两数相加
LeetCode题库整理[Java] 2.两数相加 题目:给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果, ...
- LeetCode题库整理【Java】—— 1两数之和
LeetCode题库整理[Java] 1.两数之和 题目:给定一个整数数组和一个目标值,找出数组中和为目标值的两个数.你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用. 示例: 给定 nu ...
- Java中的两个关键字——super、this
Java中的两个关键字--super.this 神话丿小王子的博客主页 一.super super 是java中方的一个关键字,用它可以引用父类中的成员: super可用于访问父类中定义的属性 sup ...
- java中判断两个字符(或者字符串相等)
string a,b;//两字符串 在java中判断两个字符(字符串)相等,用a.equals(b); if(a.equals(b)){ //如果相等,返回值为true }else{ //如果不相等, ...
- java类型转换答案,在java中支持两种类型的类型转换,自动类型转换和强制类型转换。父类转化为子类需要强制转换。...
在java中支持两种类型的类型转换,自动类型转换和强制类型转换.父类转化为子类需要强制转换. 更多相关问题 计算机病毒通过()传染扩散得极快,危害最大. 当一个现象的数量由小变大,另一个现象的数量相反 ...
- JAVA中 fastjson两个JSONArray叠加,合并 ,方法 addAll()
JAVA中 fastjson两个JSONArray叠加,合并用addAll() package com.map;import com.alibaba.fastjson.JSONArray; impor ...
最新文章
- Java stream! Kafka steam!流式处理这么火!它究竟是个啥?
- VTK与ITK的详细安装指南
- arpr选定的文件非rar压缩包_python解压压缩包
- 结构型模式之Flyweight模式
- ML之LiRLassoR:利用boston房价数据集(PCA处理)采用线性回归和Lasso套索回归算法实现房价预测模型评估
- input框在ios中的阴影问题
- mongo04---基本查询
- angularjs的基础知识
- Why Open vSwitch?
- mysql 查询表结构
- oracle进程的作用,浅析Oracle10g新进程 MMON 和 MMNL的作用
- 无人驾驶、免费乘坐,硅谷的出租车行业要变天了
- 微软发布云端计算机实验室服务 可以让用户存取虚拟机
- 计算机病毒存于什么,计算机病毒存在于哪里
- 信号计算机联锁试题,计算机联锁试题.doc
- LoadRunner教程(13)-LoadRunner 服务水平协议
- linux 关闭后台程序
- 记录域名如何过360拦截防护,非绝对
- 深度学习在文本分类中的应用
- 【c++】Lanelet2 Examples笔记(二)