toPlainString() //转为普遍计数法输出
//给一个字符串1.238761976E-10
//如何得到0.0000000001238761976这个字符串呢?
BigDecimal bd = new BigDecimal("1.238761976E-10");
System.out.println(bd.toPlainString());
stripTrailingZeros() //去掉末尾0
//给一个字符串1245600.000
//如何得到1245600这个字符串?
BigDecimal bd=new BigDecimal("1245600.000");
System.out.println(bd.stripTrailingZeros());
一段经典的代码,解的是codeforces_B. Barnicle
import java.util.Scanner;
import java.math.BigDecimal;
public class Main
{
public static void main(String[] args)
{
Scanner cin = new Scanner(System.in);
String s = cin.next();
BigDecimal a =new BigDecimal(s);
System.out.print(a.stripTrailingZeros().toPlainString());
}
}