|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
但是我同意你的观点,对于大型项目来说,应该是采用框架的一部分,根据功能的不同而改进,欢迎你能再提出些宝贵意见,我会多多学习的。说到jbuilder,我可能是个人感觉,用的时候确实没有vs爽,我最喜欢的IDE是netbeans,谢谢。运算因为Java的复杂范例不克不及够准确的对浮点数举行运算,这个工具类供应准确的浮点数运算,包含加减乘除和四舍五进。
以下为代码:
importjava.math.BigDecimal;
publicclassArith{
//默许除法运算精度
privatestaticfinalintDEF_DIV_SCALE=10;
//这个类不克不及实例化
privateArith(){
}
/**
*供应准确的加法运算。
*@paramv1被加数
*@paramv2加数
*@return两个参数的和
*/
publicstaticdoubleadd(doublev1,doublev2){
BigDecimalb1=newBigDecimal(Double.toString(v1));
BigDecimalb2=newBigDecimal(Double.toString(v2));
returnb1.add(b2).doubleValue();
}
/**
*供应准确的减法运算。
*@paramv1被减数
*@paramv2减数
*@return两个参数的差
*/
publicstaticdoublesub(doublev1,doublev2){
BigDecimalb1=newBigDecimal(Double.toString(v1));
BigDecimalb2=newBigDecimal(Double.toString(v2));
returnb1.subtract(b2).doubleValue();
}
/**
*供应准确的乘法运算。
*@paramv1被乘数
*@paramv2乘数
*@return两个参数的积
*/
publicstaticdoublemul(doublev1,doublev2){
BigDecimalb1=newBigDecimal(Double.toString(v1));
BigDecimalb2=newBigDecimal(Double.toString(v2));
returnb1.multiply(b2).doubleValue();
}
/**
*供应(绝对)准确的除法运算,当产生除不尽的情形时,准确到
*小数点今后10位,今后的数字四舍五进。
*@paramv1被除数
*@paramv2除数
*@return两个参数的商
*/
publicstaticdoublediv(doublev1,doublev2){
returndiv(v1,v2,DEF_DIV_SCALE);
}
/**
*供应(绝对)准确的除法运算。当产生除不尽的情形时,由scale参数指
*定精度,今后的数字四舍五进。
*@paramv1被除数
*@paramv2除数
*@paramscale暗示暗示必要准确到小数点今后几位。
*@return两个参数的商
*/
publicstaticdoublediv(doublev1,doublev2,intscale){
if(scale<0){
thrownewIllegalArgumentException(
"Thescalemustbeapositiveintegerorzero");
}
BigDecimalb1=newBigDecimal(Double.toString(v1));
BigDecimalb2=newBigDecimal(Double.toString(v2));
returnb1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue();
}
/**
*供应准确的小数位四舍五进处置。
*@paramv必要四舍五进的数字
*@paramscale小数点后保存几位
*@return四舍五进后的了局
*/
publicstaticdoubleround(doublev,intscale){
if(scale<0){
thrownewIllegalArgumentException(
"Thescalemustbeapositiveintegerorzero");
}
BigDecimalb=newBigDecimal(Double.toString(v));
BigDecimalone=newBigDecimal("1");
returnb.divide(one,scale,BigDecimal.ROUND_HALF_UP).doubleValue();
}
}
你精通任何一门语言就最强大。现在来看,java的市场比C#大,C#容易入手,比较简单,java比较难 |
|