java中的数据类型:

变量

Java作为一种强类型语言,其中的每一个变量在编译前,都必须声明类型!
分为两种:

在 Java 的领域里,基本数据类型变量存的是数据本身,而引用类型变量存的是保存数据的空间地址。说白了,基本数据类型变量里存储的是直接放在抽屉里的东西,而引用数据类型变量里存储的是这个抽屉的钥匙,钥匙和抽屉一一对应。

需要注意的是java中float类型与double类型,和C语言有所不同。
默认double类型。如果一定要使用float类型,在数字后加F后缀
整数默认int类型,使用long类型时,数字后加个L后缀
并且char占两个byte,C语言中char占一个byte。

数据类型可以转化:

自动类型转换(隐式)

1.特点:代码不需要进行特殊处理,自动完成
2.规则:数据范围从小到大
int --> long, float --> double;
long --> float/double
float 变量名 = 变量值L;
double 变量名 = (double)变量值;

强制类型转换(显式)

1.代码需要进行特殊的格式处理,不能自动完成。
2.格式:
范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据

PS:
强制类型转换不推荐使用,有可能发生数据溢出、精度损失。
byte/short/char都可以发生数学运算,eg:“+”

char zifu = 'A';System.out.println(zifu);  //输出 ASystem.out.println(zifu + 1);//把 A 当作65进行处理,再 + 1,即输出 66

byte/char/short这三种类型在运算时,首先被提升为int类型,然后再计算。

byte num1 = 40;byte num2 = 50;short num3 = 60;byte result = num1 + num2;  //Error!!!//byte + byte --> int + int --> int故:int result = num1 + num2;   //输出 90或者://short + byte --> int + int --> int -->short//强制类型转换为short,前提是本身范围没有超过short才行short result2 = (short)num1 + num 3;  //输出 100

boolean类型不能发生数据类型转换!!

常量

常量被赋值后,不允许被改变!
通常使用final对常量进行定义。

final DataType 常量名 = 常量值;
Tips:常量的命名规范与普通变量有所不同,要将每个字母大写并用下划线字符分隔每个单词。