美文网首页
Java基础之变量(3)

Java基础之变量(3)

作者: 998584f56259 | 来源:发表于2016-07-17 17:09 被阅读66次

    1、Java是一种强类型的编程语言,在定义变量时,必须声明变量的类型,在为变量赋值时,必须赋予和变量同一种类型的值。

    2、在Java中数据类型分为两种,即基本数据类型和引用数据类型,如下图


    3_1.png

    8种数据类型是Java内嵌的,在任何操作系统中都具有相同的大小和属性,而引用数据类型是在Java程序中自己定义的变量类型。

    3、整数类型变量:用来存储整数数值。Java中为了给不同大小的整数合理分配内存空间,定义了四种不同类型的整数:字节型(byte)、短整型(short)、整型(int)、长整型(long),分别为1字节、2字节、4字节、8字节。在为一个long类型变量赋值时需要注意一点,所赋值的后面要加上L或l,如果未超出int型的取值范围可以省略。

    4、浮点类型变量:用来存储小数数值。分为float和double,double表示的数值比float的更精确。float占四个字节,double占8个字节。

    5、字符类型变量:char表示,占两个字节。可以为它赋值'a',也可以赋值0~65535的整数,它会自动转化为对应的字符。

    6、布尔类型变量:在Java中用boolean表示,该类型的值只有两个,true或者false。

    7、类型转换,分为自动类型转换和强制类型转换。
    自动类型转换:又叫隐式类型转换,实现自动类型转换满足两个条件,一个是两种数据类型彼此兼容,另一个是目标类型的取值范围大于源类型的取值范围。
    (1)、整数类型之间的转换:占用字节少的整数类型可以转换为占用字节多的类型。另外char类型占用两个字节可以转换为int和long型整数表示。
    (2)、整数类型赋值给float类型:不高于四个字节的整数类型byte、short、int、和字符类型char可以赋值为float类型。
    (3)、其他类型转换为double类型:byte、char、short、int、long、float都可以赋值给double类型。

    强制类型转换:又叫显式类型转换。当两种类型不兼容或者是目标类型取值范围小于源类型时,自动类型转换无法进行,这时就需要强制类型转换。

    8、表达式类型自动提升:
    byte b1 = 3;
    byte b2 = 4;
    byte b3 = b1+b2;
    这样的运算会编译报错,原因是表达式b1+b2运算期间,变量b1和b2都被自动提升为int型,表达式的运算结果也就成了int型,这时再赋值给int型的变量就会报错,需要强制类型转换。修改为byte b3 = (byte)b1+b2;

    9、Java基本数据类型所占字节数。
    其中,boolean类型所占存储空间的大小没有明确指定,仅定义为能够取字面值true和false。基本类型具有的包装器类,使得可以在堆中创建一个非基本对象,用来表示对应的基本类型。


    q_p.jpg

    相关文章

      网友评论

          本文标题:Java基础之变量(3)

          本文链接:https://www.haomeiwen.com/subject/olgujttx.html