自从有了二进制计数系统,1和0成为字符。有了字符,可以用来表示各种数据类型。有了数据类型,抽象步骤是数据结构。各种数据结构形成对象,对象可以在那里各种调用方法,不同的方法成为服务的一部分,每个服务构成一个模块,不同的子模块成为一个系统。因此,java数据类型是整个java知识体系的重要组成部分。
总的来说,Java数据类型可分为基本数据类型和引用数据类型两类。具体分类方法如下图所示:
从上图不难看出:Java的基本数据类型主要包括:数值类型、字符类型和布尔类型。数值,字符和布尔是Java的设计师认为的构建世界的核心元素。通俗点来说,Java世界的所有系统都是由这三种基本单元的组合和创建的。这也是大多数编程语言的相似之处。
下表可以让我们更清楚地分别生成各种数据类型:
数值类型分为整数型和浮点型。
整数类型:byte、short、int、long
1.基本类型的byte
当我们讨论二进制时,我们实际上讨论了比特的概念。而一个字节由八个比特组成,字节是Java支持的基本类型之一。本质上,byte类型只是8位整数,取值范围为-128至127。可以猜出,字节由byte关键词表示:
byte someByte = 20;
同样,下面的代码片段也可以用来确认byte类型的取值范围:
Byte.MAX_VALUE // Prints 127
Byte.MIN_VALUE // Prints -128
byte类型在阅读和处理原始数据时非常有用,但一般来说,我们不会使用它,因为取值范围太小。
2.基本类型的short
short是另一种整数类型,它占用的空间比int类型小。事实上,它占用的空间只有int类型的一半,为16位,由short关键词表示:
short someNumber = 11;
short类型的值范围只有整数的一半,我们可以使用以下代码来确认:
Short.MAX_VALUE // Prints 32767
Short.MIN_VALUE // Prints -32768
实际应用中,short只有6546个可能值。当内存空间和磁盘空间有限时,我们将使用byte和short。但在其他情况下,在定义整数时默认使用int更安全。
3.基本类型的int
首先,Java的整数是由int关键字表示的32位符号(即包括正值和负值)的整数:
int someNumber = 10;
当然,像所有基本类型一样,整形手术也有自己的限制。因为它只是32位,因此取值范围为-2147483648-2147483647。当然,我们可以在DrJava交互面板中使用以下技巧来确认:
Integer.MAX_VALUE // Prints 2,147,483,647
Integer.MIN_VALUE // Prints -2,147,483,648
自然地,对于简单的计算,int是最常用的整数类型。若您需要更大的数字范围,请参考以下long。
4.基本类型的long
与相反,short是long的基本类型,即长整数。这种类型用来表示比int类型更大的数字。long类型为64位符号整数,其值范围超过1018次。
通常,长整数使用long关键字表示:
long someBigNumber = 1013401346173L;
可以查看下面的代码64位值有多大:
Long.MAX_VALUE // Prints 9、223、372、036、854、775
Long.MIN_VALUE // Prints -9、223、372、036、854、775
浮点类型:float、double
5.float基本类型
尽管我们通常使用它64位浮点类型double,但Java也支持另一种浮点类型,称为float。但与int类似,Java默认使用double来表示浮点。无论如何,我们可以用float来表示32位浮点类型:
float someNumber = 11.4f;
float类型范围如下:
Float.MAX_VALUE // Prints 3.4028235E38
Float.MIN_VALUE // Prints 1.4E-45
可见,32位浮点数的范围和精度要小得多。如果不需要double的精度,节省一半的空间,可以选择float类型。
6.double基本类型
与由double关键词表示,Java的双精度类型为64位浮点数:
double someNumber = 110.55;
需要提醒的是,浮点数实际上是实数。换句话说,双精度浮点数包含小数点。
boolean isBool = true;
与其他基本类型不同,布尔类型有些特殊,它们不代表数字值。事实上,以前使用过MAX_VALUE和MIN_这里不能使用VALUE技能。相反,它表示true或false,即真假。
Java引用类型分为引用类型四种类是类引用类型、接口引用类型和数组引用类型,如下所示:
Object object; //类引用类型
List
int[] array; ///数组引用类型
与基础数据类型不同的是,引用数据类型可以赋值null,也就是空的意思,如下所示:
Object object = null; //类引用类型
List
int[] array = null; ///数组引用类型
常用的引用类型有很多,JDK为我们提供了许多核心引用类型,当然,我们也可以定制引用类型(数据引用类型除外)。因为这种数据类型相对而言java用的比较少,这里就不多介绍了。