Java的基本数据类型

阅读:163

这节内容比较多,请慢慢消化。JAVA是强类型语言,就是每种类型都必须定义具体的类型。计算机只能识别01两种数字,任何的复杂的数字最终都会换算成二进制,也是以二进制存储的。

Java中基本数据类型包含8中,分别代表代表不同的类型,具体是布尔型(boolean),字节型(byte),短整型(short),整型(int),长整型(long),单精度浮点型(float),双精度型(double),字符型(char)。

总结下:

  1. 整数型:字节型(byte),短整型(short),整型(int),长整型(long)。
  2. 浮点型:单精度浮点型(float),双精度型(double)。
  3. 字符型:字符型(char)
  4. 布尔型:布尔型(boolean)

还有一点很重要Java中最小的计算单元为byte(字节),1字节=8位(bit)

 

1.字节型(byte)

byte代表是数字,占用一个字节, 8位、有符号的,以二进制补码表示的整数;

取值范围: -128(-2^7)- 127(2^7-1);默认值是0; 比如:byte a = 30,byte b = -20。这个是定义了两个变量,在这节后面会详述,先不要着急。

2.短整型(short)

短整型代表也是数字,占用两个字节, 16 位、有符号的以二进制补码表示的整数。

取值范围: -32768(-2^15)- 32767(2^15 - 1);默认值是0; 比如:short s = 500,short r = -600。

3.整型(int)

整型代表数字,占用4字节,32位、有符号的以二进制补码表示的整数;

取值范围: -2,147,483,648(-2^31)- 2,147,483,647(2^31 - 1);默认值是 0; 比如:int a = 900000, int b = -900000。

4.长整型(long)

代表数字,占用8字节, 64 位、有符号的以二进制补码表示的整数;

取值范围: -9,223,372,036,854,775,808(-2^63)- 9,223,372,036,854,775,807(2^63 -1);默认值是 0L; 比如: long a = 9900000L,long b = -8800000L。 注意:这里以L结尾。

5.单精度浮点型(float)

代表的是小数,4字节,32位、符合IEEE 754标准的浮点数;默认值是 0.0f; 比如:float a = 889.98f。

6.双精度型(double)

代表小数,双精度,8字节,64 位、符合IEEE 754标准的浮点数;浮点数的默认类型为double类型;默认值是 0.0d; 比如:double a = 789.66。

7.布尔型(boolean)

具体占用空间先不用纠结,值分为true或false;默认是false;

比如:boolean b = true;

8.字符型(char)

代表一个字符,两字节,16 位 Unicode 字符;

取值范围: \u0000(即为0)- \uffff(即为65,535); 例子:char c = '中';。

9.变量

程序运行中,我们需要一块内存区域存放用到的临时数据,这块内存区域就是变量,用来临时存储,需要用的时候可以拿过来直接用。

变量有如下特性:

  1. 内存中的一个存储区域

  2. 该区域有自己的名称(变量名)和类型(数据类型)和值

  3. Java中每个变量必须先声明,再赋值,然后才能使用

  4. 该区域的数据可以在同一类型范围内不断变化

  5. Java 中的变量有四个基本属性:变量名,数据类型,存储单元和变量值

    比如int中的例子:int a = 900000;其中int为类型,a为变量名,900000变量的值。

 

10.例子

结合以上概念,我们写一个程序;

public class TypeTest {

    public static void main(String[] args){

        byte b = 12;
        short s = 24;
        int i = 32;
        long l = 64L;
        float f = 0.2f;
        double d = 26.35;
        boolean flag = true;
        char c = '中';

        System.out.println("我是byte类型,值为:" + b);
        System.out.println("我是short类型,值为:" + s);
        System.out.println("我是int类型,值为:" + i);
        System.out.println("我是long类型,值为:" + l);
        System.out.println("我是float类型,值为:" + f);
        System.out.println("我是double类型,值为:" + d);
        System.out.println("我是boolean类型,值为:" + flag);
        System.out.println("我是char类型,值为:" + c);
    }
}

输出结果如下:

我是byte类型,值为:12
我是short类型,值为:24
我是int类型,值为:32
我是long类型,值为:64
我是float类型,值为:0.2
我是double类型,值为:26.35
我是boolean类型,值为:true
我是char类型,值为:中

 


© 版权归知否网(zhifou.net)所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权知否网将依法追究其法律责任。
读后有收获,请作者喝杯咖啡

精彩留言

发表评论
更多精彩内容,请关注微信公众号