精读《Java核心技术-卷Ⅰ》-数据类型

Java是一种强类型的语言,这句话的意思主要有两个方面,一是必须为每一个变量声明一种类型,二是每一种基本类型的长度都是固定的(和C++不同)。在Java中一共有8中基本数据类型,分别是:4种整型,2种浮点类型,1种用于表示Unicode编码的字符单元char类型,以及boolean类型。下面分别对这几种数据类型进行详细的介绍。

1.整型

所谓整型,就是用于表示没有小数部分的数值,它允许是负数。整型在Java语言中的特征非常明显,下面为您详细介绍几种:

第一种:Java语言中的整型数据长度固定,不像C++那样,不同位数的操作系统整型数据的长度是不固定的。对于Java来说,这样的好处是非常大的,因为整型数据的这种特性,保证了Java语言的跨平台特性,避免了在不同平台间进行程序迁移时很多整数溢出的问题。

第二种:byte和short数据类型基本很少使用,除非是底层的文件处理或者需要控制占用存储空间的大数组,这时候byte和short数据类型可能能够派上用场。否则,大多数情况下,使用int和long类型,以及基本够用。

第三种:Java的整型数据中,没有任何无符号形式的int、long、short,以及byte数据类型。

2.浮点型

浮点类型用于表示有小数部分的数值,在Java中有两种浮点类型,分别是float和double(和C++基本相同)。double表示这种数据类型是float类型的两倍,或者是叫双精度浮点类型。一般情况下,我们不建议使用float数据类型,因为4个字节的float类型很难满足数据长度的需求。float数据类型的数值有一个后缀F或f,没有后缀F的浮点数值默认为double类型。

3.char类型

Java中的char类型占用两个字节(C++是一个),char类型原本用于表示单个字符,但是现在有时候一个char类型已经不能表示一个字符,而是需要两个char值才能表示一个Unicode字符。这主要是因为字符集的扩充导致两个字节的空间已经不够使用。

另外,在Java程序中强烈建议不要使用Char数据类型,因为一个字符到底是占用几个字节,现在是不能完全确定的。如果一旦在Char类型的变量中赋值了占用超过两个字节的字符,那这个Char类型的变量失真的。这种Bug,有编程经验的程序员应该知道,有时候是非常难找的。

4.boolean类型

boolean(布尔)类型只有两个值:false和true,用来判定逻辑条件。有一点需要重点说明的是:整型值和布尔值之间不能进行相互转换(C++中可以)。例如if(x=0)语句,该语句在C++中是可以编译通过的,而且永远为假。但是在Java语言中,该语句是有语法错误,不能编译通过的。

上面就是Java语言中基本的8中数据类型,下一篇文章将会为您介绍Java语言中最常用的一个类型,但是该类型不是基本数据类型,那它是谁呢?相信您已经猜到了,它就是String。我是徐建航,这是我写的第10篇文章,欢迎你加入007社群,七天写一篇,一起写七年,七年之后一起去南极。


精读《Java核心技术-卷Ⅰ》-数据类型_第1张图片

你可能感兴趣的