Java-指数记数法

Java采取了一种很不直观的记数法来表示指数。

在科学工作领域中,e代表自然对数的基数。约等于2.718(Java中的Math.E给出了double型的精确值)。

例如:1.39*e^(-43)这样的指数表达式意味着1.39*2.718^(-43)。但是,在C、C++、Java中,e代表10的幂次。所以在Java中看到1.39e-43f这样的表达式时,它的值应该是1.39*10^(-43)。

如果编译器能正确识别类型,则不用在数值后加字符。如果存在含糊不清的地方,编译器通常会将指数做双精度(double)处理,示例如下:

public class Example {
    public static void main(String[] args) {
    float f=1.39e-43f;
    System.out.println("f is "+f);
    double d1=47e47d;
    double d2=47e47;
    System.out.println("d1 is "+d1);
    System.out.println("d2 is "+d2);
    }
}

 

输出结果如下:

f is 1.39E-43
d1 is 4.7E48
d2 is 4.7E48

  

转载于:https://www.cnblogs.com/liyifaner/p/8992919.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值