【Java启程】数据类型与类型转换

【Java启程】数据类型与类型转换


本节对Java中的数据类型做一个总结。
Java中的所有数据都是有类型的。Java中的数据类型可分为两组:基本数据类型和引用数据类型。

基本数据类型

Java语言有8种基本数据类型,其中有6种是数值型的:byte,short,int, long,float和double。另外两种一种是布尔型的boolean,另一种是字符型的char。

数据类型 说明 字节
byte 整形,数字后面可加B 1
short 整形,数字后面可加S 2
int 整形 4
long 整形,数字后面需加L 8
float 浮点形,数字后面需加F 4
double 浮点形,数字后面可加B 8
char 字符形,需用英文单引号括起 2
boolean 布尔形,只有两个值用于表真假 1

对于整型数据,默认为带符号的。
数值型取值范围如下:

数据类型 无符号 带符号(数据类型前需加前缀 “u” )
byte 0 ~ 28 - 1 -27 ~ 27 - 1
short 0 ~ 216 - 1 -215 ~ 215 - 1
int 0 ~ 232 - 1 -231 ~ 231 - 1
long 0 ~ 264 - 1 -263 ~ 263 - 1
float ±(2128 ~ −2−149) ×
double ±(21024 ~ 2−1074) ×

引用数据类型

Java中除去基本数据类型的其他类型都是引用类型。引用数据类型包含类、接口和数组三类。常用的引用数据类型如String、StringBuilder、ArrayList、TreeSet、HashMap等。
在Java中,因为基本数据类型对应的是单个的值,所以基本数据类型变量存储的是值本身(或者说数据本身),而引用类型对应的是一堆数据,所以引用类型变量存的是(保存这些数据的)唯一地址。这就像一个人只能同时存在一个妻子,那么他的妻子既是对象又能作为唯一的标识码;而一个人可以有多个孩子,那么需要把这个人当作他孩子的标识码间接确定这些孩子。

类型转换

在Java中,不同的数值型数据经常需要进行转换,如

    short s = 10;
    System.out.println("short = " + s);
    int i = s;
    System.out.println("int = " + i);
    System.out.println("double = " + (double) i);
    // byte b = d; 这种转换会报错

其运行结果为:

short = 10
int = 10
double = 10.0

这种类型转换称自动类型转换。自动类型转换遵循下图:
在这里插入图片描述
而若要进行逆向类型转换,则需进行强制类型转换。

    int i2 = (int) 88.88; // 该过程把boolean数88.88强制转为int型
    System.out.println("int2 = " + i2);

猜你喜欢

转载自blog.csdn.net/qq_41157312/article/details/106186817