Java 数据类型 Part05 浮点型

/*
    关于浮点型数据类型:
        float:单精度【4个字节】
        double:双精度【8个字节,精度较高】

    double的精度太低【相对来说】,不适合做财务软件。
    财务涉及到钱的问题,要求精度较高,所以SUN在基础SE类库当中
    为程序员准备了精度更高的类型,只不过这种类型是一种引用
    数据类型,不属于基本数据类型,他是:java.math.BigDecimal

    java程序员是基于SUN提供的庞大的类库来进行开发的,java的SE类库在哪呢?
        * SE类库字节码:C:\Program Files (x86)\Java\jdk**\jre\lib\rt.jar
        * SE类库的源码:C:\Program Files (x86)\Java\jdk**\src.zip

    例如:String.java和String.class
    我们的(String[] args)中的String使用的就是String.class字节码文件

    在java中的语言中,所有浮点型字面值【3.0】,默认被当作double类型来处理,
    要想该字面值当作float来处理,需要在字面值后面加F或者f
    
    注意:
        double和float在计算机内部二进制中存储的时候都是近似值。
        在现实世界中有些数据是无限循环的,比如2.33333333333333333
        有限的空间去存储无限的数据,只能近似值
*/

public class DataTypeTest05{
    public static void main(String[] args){
        double d = 3.0;//通过,不存在类型转换
        System.out.println(d);

        //float f = 5.1;//编译报错,因为大类型转换小类型,需要强制类型转换
        //解决方案:
        //第一种:没有类型转换
        //float = 5.1f;
        //第二种:强制类型转换
        //float = (float)5.1;


    }
}

你可能感兴趣的:(Java 数据类型 Part05 浮点型)