基本数据类型
八种基础数据类型(六种数值类型,一种布尔类型,一种字符类型)
2byte
short
int
float
float精确到7位有效数字
double精确14位
float a=2.1; //这种是错误的,Java中浮点型默认为double型
float a=2.1f; //正确
因为整型常量默认为int;
浮点型常量默认为double;
long
boolean
char
自动类型转化
容量小的可以自动转化为容量大的
红线代表不损失精度,蓝线代表损失精度
可以将整型变量直接赋给byte、short、char等类型变量,不需强制类型转换,只要不超出范围即可。
变量溢出
int a=1000000000;10亿
int b=30;
long c=a*b;//数据溢出
//两种解决
long c=(long)a*b;
long c=12345L*2456665555;
三种引用数据类型(类、接口、数组)
值传递问题
- 基本数据类型
传递的是值的副本。 副本改变不会影响原件 - 引用数据类型
传递的是值的副本。但是引用类型指的是“对象的地址”。因此,副本和原参数都指向了同一个“地址”,改变“副本指向地址对象的值,也意味着原参数指向对象的值也发生了改变”。