Java基础--变量

Java变量有两种类型:primitive主数据类型和引用类型

primitive主数据类型:用来保存基本类型的值,包括整数,布尔和浮点数等

类型 位数 值域
boolean JVM决定 true/false
char 16bits 0~65535
byte 8bits -128~127
short 16bits -32768~32767
int 32bits -2147483648~2147483647
long 64bits -很大~+很大
float 32bits 范围规模可变
double 64bits 范围规模可变

 

 

 

 

 

 

 

 

 

注意

1、float  f = 32.5f; 如果“32.5f”没有加上“f”,Java会将所有带小数点的值当作double处理;

2、值域范围大的数据类型 数据 不能存放在 值域类型小的数据类型,可以通过强制类型转换损失精度存储;

     如:int x = 32.5;编译不通过,   int x = (int)32.5;编译通过,但是会损失精度

          int x = (int)3222222222222222222222222222.3;编译通过,但是超出int的值域范围,最终x结果为int的最大值。

 

对象引用变量:保存的是对象的引用

没有对象变量这样的说法,只有引用(reference)到对象的变量;

对象引用保存的是存取对象的方法,它并不是对象的容器,而是类似指向对象的指针。或者可以说是地址。但在Java中我们不会也不该知道引用变量中实际装载的是什么,它只是用来代表单一的对象。只有JVM才会知道如何使用引用来取得该对象。

举例:Dog d = new Dog();

          d :Dog类型的对象引用,JVM会为 对象引用变量d 分配空间;

          new Dog():Dog对象,JVM会为 Dog对象new Dog() 分配堆空间;

你可能感兴趣的:(Java)