一、数据类型
Java 是一种强制类型的语言,所有的变量都必须先明确定义其数据类型,然后才能使用。
Java 语言支持的数据类型分为两种:基本数据类型(Primitive Type)和引用数据类型(Reference Type)。
1、基本数据类型
基本数据类型包括 boolean(布尔型)、float(单精度浮点型)、char(字符型)、byte(字节型)、short(短整型)、int(整型)、long(长整型)和 double (双精度浮点型)共 8 种。
基本数据类型是CPU可以直接进行运算的类型,每种基本数据类型占用的内存如下:
2、引用数据类型
引用数据类型包括类(class),接口(interface)和数组。
二、数据类型转换
java程序中,在所赋值的数值类型和被变量接收的数据类型不一致时,需要从一种数据类型转换成另一种数据类型。数据类型的转换可以分为隐式转换(自动类型转换)和显式转换(强制类型转换)两种。
1、隐式转换(自动类型转换)
自动转换的规则是从低级类型数据转换成高级类型数据。转换规则如下:
- 数值型数据的转换:byte→short→int→long→float→double。
- 字符型转换为整型:char→int。
在运算过程中,由于不同的数据类型会转换成同一种数据类型,所以整型、浮点型以及字符型都可以参与混合运算。
实例:
//将 int类型和 float类型转换成 double类型
class Scratch {
public static void main(String[] args) {
int a = 5;
float b = 3.8f;
double c = a + b;
System.out.println("double c = " + c);
}
}
--------------------------------------------------------------------------------
运行结果:
double c = 8.800000190734863
2、显式转换(强制类型转换)
语法:(type)variableName
type 为 variableName 要转换成的数据类型, variableName 是指要进行类型转换的变量名称。
实例:
//将 double类型转换成 int类型
class Scratch {
public static void main(String[] args) {
double a = 5.8;
int b = (int) a;
System.out.println("int b = " + b);
}
}
--------------------------------------------------------------------------------
打印输出结果:
int a = 5
reference: