Java常量与数据类型
一、常量
常量就是不可变的量,在程序中通常就是一个值。一个具体的数字、字符、字符串都可以是常量,它是一个带有特殊含义的值。在程序中,常量也拥有不同的分类,不同数据类型的分类等。
整型:整数数值类型(10、520、-360…)。整型就是整数类型的值,包括正整数、负整数及0。
浮点型:小数数值类型(3.14、7.96、1E14…)。浮点型就是带有小数的数值类型,其中包括单精度浮点型和双精度浮点型,在取值范围和表现形式上稍有区别。双精度浮点型的取值范围更大、更精确,单精度浮点型相对要小一些。从表现形式上区分,单精度浮点型常亮在数值后面需要添加字母f。例如,3.14f就是单精度浮点型的表示形式,3.14这种不带有字母f的表现形式就是双精度浮点型,虽然从数值上看起来类似,但却是不同的表现形式。Java是强语法、强类型的编程语言,因此,在为对应数据类型进行赋值操作的时候,需要注意不同类型的区别。另外,浮点数还支持指数表示法,比如1E15表示的是1乘以10的15次幂,那么218E-3表示的就是218乘以10的-3次幂,依此类推。
字符型:单个字符类型(‘a’ 、‘z’、‘H’, ‘#’, ‘5’)
字符型就是我们平时使用的各种字符、字母、数字,以及各种标点符号。我们在Java中表示字符的时候,需要通过一对单引号将其括起来,字符在计算机中具体的表现是通过字符编码实现的。系统通过对应的字符编码会将具体的编码解析成对应的字符反馈给用户。
字符串型:多个字符集合类型(‘dog’、 ‘小明’、 ‘明天’)
字符串就是多个字符的集合,多个字符组成的串,我们称之为字符串,在Java中表示字符串的时候,我们需要使用一对双引号将其括起来。注意字符串与单个字符的区分–单个字符使用单引号,而字符串使用双引号,即使双引号里面只有一个字符,其表示的也是一个字符串,只不过字符串中的有效字符只有一个而已。
布尔类型:真或假(true/false)
布尔类型通常是指一种逻辑关系,真(true)表示的含义就是某个逻辑关系是成立的。比如1<3是成立的,其对应的布尔类型值就是真(true),相反,1>3是不成立的,其对应的布尔类型就是假(false)。
空类型:NULL类型(null)
在Java中有一种比较特殊的常亮值叫做空类型,通常用于引用数据类型的初始化。
二、数据类型的分类
不同的数据拥有不同的数据类型,在编程开发过程中,不同类型的数据会起到不同的作用,不同的数据类型所占用的内存空间也是不同的。下面,我们就来认识一下Java中的一些基本的数据类型。
2.1 基本数据类型
整数型
类型名 | 关键字 | 内存占用 |
---|---|---|
小整型 | byte | 1字节,8个二进制位 |
短整型 | short | 2字节,16个二进制位 |
整型 | byte | 4字节,32个二进制位 |
长整型 | byte | 8字节,64个二进制位 |
浮点型
类型名 | 关键字 | 内存占用 |
---|---|---|
单精度浮点型 | float | 4字节 |
双精度浮点型 | double | 8字节 |
字符型
类型名 | 关键字 | 内存占用 |
---|---|---|
字符型 | char | 2字节 |
布尔型
类型名 | 关键字 | 内存占用 |
---|---|---|
布尔型 | boolean | 1字节 |
2.2 引用数据类型
具体说明如下表所示。
类型名 | 关键字 | 类型描述 |
---|---|---|
字符串 | String | 用于存放字符串 |
数组 | Array | 用于存储相同数据类型变量的集合 |
类 | class | 后续章节具体讲解 |
接口 | interface | 后续章节具体讲解 |
Lambda | Lambda | 常用于函数式接口 |