Why does this code sometimes return 1E+1 whilst for other inputs (e.g. 17) the output is not printed in scientific notation?

BigDecimal bigDecimal = BigDecimal.valueOf(doubleValue).multiply(BigDecimal.valueOf(100d)).stripTrailingZeros();

System.out.println("value: " + bigDecimal);

BigDecimal bigDecimal = BigDecimal.valueOf(100000.0)

.multiply(BigDecimal.valueOf(100d))

.stripTrailingZeros();

System.out.println("plain : " + bigDecimal.toPlainString());

System.out.println("scientific : " + bigDecimal.toEngineeringString());

outputs:

plain : 10000000

scientific : 10E+6

java 查询的结果为 0e-8 和 0E-12 使用 BigDecimal 类型进行转换: BigDecimal bigDecimal = new BigDecimal (0E-12); System.out.println( bigDecimal ); BigDecimal bigDecimal 1 = new BigDecimal (0E-8); Sys... 我们都知道,e是超越数2.718....的字母表示形式,和π一样,但为什么到了编程语言里面,就代表10了呢? 《 Java 编程思想》里面给出了原因:E是exponential的首字母,它的意思是“指数”、幂数,代表数字系统的基数-----一般是10。在1960年代,当时的输入设备是老式的电传打字机,使用5为的baudot码,那是不包含小写字母的。第一出现小写的e表示指数大概在1970年代末期,但E... public static void main(String[] args) { BigDecimal bigDecimal = new BigDecimal (100000.0000000); System.out.println( bigDecimal .stripTrailingZeros().toString()); System.out.println( bigDecimal .stripTrailingZeros().toPlainString()); public class TransBin {public static void main(String[] args) {String num = "00101110";TransBin tb = new TransBin();String s = tb.transBinToHex(num);System.out.println(s);}public String transBinToHex(... BigDecimal 是处理高精度的浮点数运算的常用的一个类当需要将 BigDecimal 中保存的浮点数值打印出来,特别是在页面上显示的时候,就有可能遇到预想之外的科学技术法表示的问题。一般直接使用 BigDecimal .toString()方法即可以完成浮点数的打印。如:    System.out.println( new BigDecimal ("10000000000").toString());但是,toString()方法输出的字符串并不能保证不是科学计数法。不过在日常的使用中,用toString() 一:需要包含的包import java .security.*;import java .io.*;import java .util.*;import java .security.*;import java .security.cert.*;importsun.security.x509.*import java .security.cert.Certificate;import java .security.cert.... 文章目录123、JRE和JDK3.1、JRE( Java Runtime Environment)3.2、JDK( Java Development Kit)3.3、JDK、JRE和JVM的关系4、JDK的下载和安装4.1、JDK的下载4.2、JDK的安装4.3、JDK的安装目录4.4、Path环境变量的配置4、HelloWorld案例5、基本语法5.1、注释5.2、关键字5.3、常量5.3.1、常量概述5.3.2、常量分类5.4、数据类型5.4.1、计算机存储单元5.4.2、数据类型5.5、数据类型5.6、变 虚拟机栈:存储基本数据类型、引用对象的变量、局部变量表等,这是线程私有的,每个线上线程的大小默认为1Mb。 程序计数器:存储字节指令的地地址,如果是本地方法栈,则存储undefined。 本地方法栈:由于 java 时表层语言,无法直接访问硬件,需要调用第三方语言,比如C、C++来操作硬件,比如创建内核线程,操作文件等。 原标题:冷知识:数学常数“e”的传奇故事自然对数的底e是一个令人不可思议的常数,一个由 lim (1+1/n)^n 定义出的常数,居然在数学和物理中频频出现,简直可以说是无处不在。这实在是让我们不得不敬畏这神奇的数学世界。 欧拉恒等式但凡说起e,一个必定要提到的公式就是欧拉恒等式——被誉为世界上最美丽的公式。数学中最基本的5个常数——0、1、圆周率π、自然对数的底e和虚数单位i,以及数学中最基本的... Java 是一种强类型语言,为每一种数据都定义了一种类型,而且必须为每一个变量声明一种类型。在 Java 中,所有的数据类型所占据的字节数量与平台无关,以便 Java 在不同的运行平台上得到相同的运行结果,所以 Java 各种数据类型的取值范围是固定的。 一 Java 数据分类 二 数据取值范围