import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Scanner;
public class Main1753 {
public static void main(String[] args) {
Scanner cin=new Scanner(System.in);
while(cin.hasNext()){
BigDecimal a=cin.nextBigDecimal();
BigDecimal b=cin.nextBigDecimal();
BigDecimal c=new BigDecimal(0);
c=a.add(b);
String str=c.stripTrailingZeros().toPlainString();//这里采用了先去掉末尾的0然后再转化成字符串输出;
System.out.println(str);
}
}
}
----------------------------------------
java.math.BigDecimal.stripTrailingZeros()返回一个BigDecimal,它在数值上等于这一个,但表示形式移除所有尾部零。
例如,从BigDecimal值600.0,其中有[BigInteger,精度]组件等于[6000,1],得到6E2使用[BigInteger,精度]组件剥离尾随零等于 [6, -2]
声明
以下是声明java.math.BigDecimal.stripTrailingZeros()方法
publicBigDecimalstripTrailingZeros()
参数
NA
返回值
此方法返回与移除所有尾部零的数值上相等的BigDecimal
异常
NA
例子
下面的例子显示math.BigDecimal.stripTrailingZeros()方法的用法
packagecom.yiibai;importjava.math.*;publicclassBigDecimalDemo{publicstaticvoidmain(String[]args){// create 4 BigDecimal objectsBigDecimalbg1,bg2,bg3,bg4;bg1 =newBigDecimal("235.000");bg2 =newBigDecimal("23500");// assign the result of stripTrailingZeros method to bg3, bg4bg3 =bg1.stripTrailingZeros();bg4 =bg2.stripTrailingZeros();Stringstr1 =bg1 +" after removing trailing zeros "+bg3;Stringstr2 =bg2 +" after removing trailing zeros "+bg4;// print bg3, bg4 valuesSystem.out.println(str1 );System.out.println(str2 );}}
让我们编译和运行上面的程序,这将产生以下结果:
235.000after removing trailing zeros 23523500after removing trailing zeros 2.35E+4