• Java基础:基本类型


    1、基本类型

        Java中有8种基本类型,分为4类,分别为:

        整型:包括  byte 、 short、 int 、 long

        泛型:float、double

        字符型:char

     布尔型:boolean

    2、基本类型长度及默认值

       

    名称

    长度(字节)

    默认值

    取值范围

    byte

    1

    0

    -128~ 127

    short

    2

    0

    -32768 ~ 32767

    int

    4

    0

    -2147483648~2147483647

    long

    8

    0

    -9223372036854774808~9223372036854774807

    float

    4

    0.0

    3.402823e+38~1.401298e-45(e+38 表示乘以10的38次方,而e-45 表示乘以10的负45次方)

    double

    8

    0.0

    1.797693e+308~4.9000000e-324

    char

    2

    u000

    boolean

    官方没有明确定义长度

    flase

    true  false

       

    3、包装类型

    基本类型

    包装类型

    byte

    Byte

    short

    Short

    int

    Integer

    long

    Long

    float

    Float

    double

    Double

    char

    Character

    boolean

    Boolean

    4、拆箱装箱

        拆箱,即,把基包装类型转换为基本类型

        装箱,即,基本类型转换为对应的包装类型。

        如:Integer no = 1;  //自动装箱

     Integer no2 = new Integer(2); //装箱

     自动装箱的实际操作对应  Integer.valueOf(1);

     在java文件生成class文件过程中会自动修改为Integer.valueOf(1),可以通过反编译工具查看。

    5、注意事项

        1)包装类型的比较不要使用==

           如  Integer no1=10;Integer no2 =10;  no1==no2;返回结果为true

               Integer no1=200;Integer no2 =200;  no1==no2;返回结果为false

       Byte、Short、Integer、Long、Character的定义中都有一个缓存机制,-128~127对应的对象会缓存到缓存中,调用valueOf()方法时,会先判断数据是否在这个范围内,如果在范围内,返回缓存对象,如果超出范围,新建一个对象返回。

       所以在这个范围内的数值,用==比较会返回true。否则会引起一些间歇性的bug,很难定位。

        2)java中的基本类型长度不会改变,在c、c++和c#中基本类型的长度会根据编辑器的位数变化,在java中不会变化。

     3)boolean官方没有规定长度,实际的占用空间长度和虚拟机有关系。

     4)基本类型在虚拟机中是存储在栈中。

        更多内容可以关注 公众号  MG驿站

                                                    

  • 相关阅读:
    多测师讲解html _伪类选择器17_高级讲师肖sir
    多测师讲解html _后代选择器16_高级讲师肖sir
    多测师讲解html _组合选择器_高级讲师肖sir
    多测师讲解html _标签选择器14_高级讲师肖sir
    前端 HTML form表单标签 input标签 type属性 重置按钮 reset
    前端 HTML form表单标签 textarea标签 多行文本
    前端 HTML form表单标签 input标签 type属性 file 上传文件
    前端 HTML form表单标签 input标签 type属性 radio 单选框
    前端 HTML form表单标签 input标签 type属性 checkbox 多选框
    前端 HTML form表单目录
  • 原文地址:https://www.cnblogs.com/mataoshou/p/10819586.html
Copyright © 2020-2023  润新知