老黑讲Java之8种基本类型double、char、boolean

2025-11-05 01:00:32

1、使用double进行浮点数的运算

    1、double和float类型表达浮点数(小数);

    2、double类型的精度值是float类型的两倍,这正是双精度的来由;

    3、大多数使用double表达浮点数,例如:

         double pi = 3.1415926;

         double r = 4;

         double s = pi * r * r;

         System.out.println(s);

老黑讲Java之8种基本类型double、char、boolean

2、浮点数直接量是double类型

    1、浮点数的直接量有两种写法:

       1)、通常写法,如:0.1、10、.5;

       2)、科学计数法,如:1.23E2、1.23e2、1.23E-2,表达1.23E2表示1.23乘以10的2次方。

    2、整型直接量为int型,浮点直接量为double类型,需要用float类型表达直接量,直接量后需要加“f”或“F”后缀,

        如:float f = 0.1 //编译错误,应改为0.1F

   

3、double运算会出现舍入误差

    1、2进制系统无法精确表示1/10,就像十进制系统无法表达1/3。

    2、2进制表示10进制数会有舍入误差,在要求精确运算的业务会导致错误。

    

    public static void main(String[] args) {

        double a = 1.0;

        double b = 0.9;

        System.out.println(a-b);

        //结果为0.09999999999999998

    }

注意:结果让人惊讶吧,往往程序运行的结果不能以人的主观判断,需要了解程序本身的运行机制,才能理解程序的运行结果。

老黑讲Java之8种基本类型double、char、boolean

4、char类型

    1、char类型是一个16位无符号整数,这个整数对应字符编码;

    2、Java字符类型采用Unicode字符集编码,Unicode是世界通用的定长字符集,所有字符都是16位。

    3、字符直接量采用字符的形式,如:'A',采用16进制的表示形式,如:‘\u4e2d’;

5、char型变量赋值

    对char型变量赋值时,采用以下三种方式:

       1)、字符直接量,如:‘A’,实际上变量存储是该字符的Unicode编码(无符号整数值),一个char型变量只能存储一个字符。

      2)、整型直接量:范围在0~65535之间的整数,变量中存储整数值对应的Unicode字符。如:

            char c1 = 66;

            char c2 = 'A';

            char c3 = '\u0041';

6、boolean变量进行关系运算

    1、boolean适合逻辑运算,表示某个条件是否成立;

    2、boolean存储true或false,true表示条件成立而false表示条件不成立;

    3、boolean用来存储关系运算的结果。

         

      public static void main(String[] args) {

          int  a = 10;

          boolean result = a >11;

          System.out.println(result);//false

          if(result){

                System.out.println("比11大");

          }else{

                System.out.println("比11小");//比11小

          }

    }

老黑讲Java之8种基本类型double、char、boolean

7、基本类型间的转换

    不同的基本类型直接可以相互转换:

         1、自动类型转换:从小类型到大类型可以自动转换;

         2、强制类型转换:从大类型到小类型需要强制转换。如:

            大类型  变量名 = (大类型)小类型。

注意:强制类型转换,可能造成精度损失或溢出。

8、强制类型转换精度丧失和溢出

    强制类型转换精度有可能丧失和溢出。

    请看如下代码,理解精度丧失和溢出的概念

 public static void main(String[] args) {

    double pi = 3.1415926535897932384;

    float f = (float)pi;

    System.out.println(f);

    }

   

老黑讲Java之8种基本类型double、char、boolean

9、总结

   国人的意识中,过完正月十五新年才真正开始,在此老黑先祝各位喜欢Java的朋友们学习更进一步,再祝各位朋友新年心想事成,万事如意!!

老黑讲Java之8种基本类型double、char、boolean

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢