JAVA基础之基本数据类型

        这是我作为小白的第二篇关于java基础的文章,十分感谢大家观看,如有错误请大家及时指正!

          接下来我为大家讲解一下JAVA基本数据类型。

               为什么要有数据类型?

                   答:Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间,可以合理的分配内存空间,数据类型决定了这种类型数据的存储方式, 取值范围, 允许的操作。比如你去买菜的时候需要用一个袋子来装菜,去家具城买家具需要用卡车来装家具,如果用袋子装家具,显然是不现实的,开卡车去装菜,也是资源的浪费。因此程序员在定义变量的时候,需要声明这个变量的数据类型,这样就会给这个变量开辟一块合理大小的内存区域,从而避免空间浪费。

               Java中数据类型的分类

                      基本数据类型(共8种)

                       引用数据类型

               基本数据类型分类(4类8种) 

                         整数型:

                        byte 占一个字节 -128到127 (字节型)

                        short 占两个字节  -2^15~2^15-1 (短整型)

                        int 占四个字节 -2^31~2^31-1 (整型)

                        long 占八个字节 -2^63~2^63-1 (长整型)

                        浮点型:

                        float 占四个字节 -3.403E38~3.403E38 单精度

                        double 占八个字节-1.798E308~1.798E308 双精度

                        这里的e38指的是10的38次方

                        字符型                        
                         char 占两个字节 0~65535

                         布尔型

                           boolean 只有两个取值true和false

整数型


请注意上面代码里面的long a = 888;

上面写的整数888会被认为是int类型,等号左右两边的类型是不一致的,但是程序没有报错。

这里面存在自动类型转换,会自动将int类型转换成long类型,即自动将int类型的888转换成为了long类型。

自动类型转换可以自动将int转成long,那么是否可以将long类型转成int类型呢?请看如下代码:


        如果想要将long类型转成int类型的话,需要进行强制类型转换,不过这种从大容量向小容量进行转换的时候要谨慎使用,有可能损失精度。

在浮点型里面也可以进行强制类型转换:

boolean类型的数据只有两个值:true/false:

字符型char和字符编码

           char 是字符类型, java 语言对字符采用 Unicode 字符编码。 由于计算机内存只能存储二进制数据。 因此必须对各个字符进行编码, 所谓字符编码, 就是用一串二进制数来表示特定的字符。

常见的字符编码

ASCII 编码:美国信息互换标准代码, 用一个字节来编码。

ISO-8859-1 字符编码:是国际化标准组织位西欧语言制定的编码, 它用一个字节来为字符编码, 与 ASCII 编码兼容。

GB2312 字符编码:它包括对简体中文字符的编码。

GBK 字符编码:它是对 GB2312 编码的扩展, 收录了更多的中文字符。

Unicode 字符编码:收录了全世界所有语言文字中的字符

转义字符

如果想要把一个特殊字符赋值给char类型该怎么办?比如我想将单引号’赋值给一个char类型

char c1 = ''';

上面写法在编译时会报错,正确的方法应该使用转义字符,斜线在java语言中有转义功能,正确的写法如下:

char c1 = ‘\”;

            至此,基本数据类型就已讲述完毕,感谢大家观看。


你可能感兴趣的:(JAVA基础之基本数据类型)