JAVA--数据类型

目录​​​​​​​

基本数据类型:

byte:

short:

int:

long:

float:

double:

char:

boolean:

引用数据类型: 

差异:


编码方式为Unicode:

1字(word)=2字节(byte)=16位(bit)

1位(bit):代表二进制中的0或1,即一位二进制数

基本数据类型:

byte:

1byte=8bit

最小值:-128(-2^7);

最大值:127(2^7-1);

默认值是:0;

short:

2byte=16bit

最小值:-32768(-2^15);

最大值:32767(2^15 - 1);

默认值是:0;

 

int:

4byte=32bit

最小值:-2,147,483,648(-2^31);

最大值:2,147,483,647(2^31 - 1);

一般地整型变量默认为 int 类型;

默认值是:0;

 

long:

8byte=64bit

最小值:-9,223,372,036,854,775,808(-2^63);

最大值:9,223,372,036,854,775,807(2^63 -1);

默认值是:0L;

 

float:

4byte=32bit

最小值:1.4E-45;

最大值:3.4028235E38;

默认值是:0.0f;

 

double:

8byte=64bit

最小值:4.9E-324;

最大值:1.7976931348623157E308;

浮点数的默认类型为double类型;

默认值是:0.0d;

 

char:

2byte=16bit

最小值:\u0000(即为0);

最大值:\uffff(即为65,535);

默认值是:‘\u0000';

 

boolean:

1byte=8bit

只有两个取值:true 和 false;

默认值是:false;

 

引用数据类型: 

类(class)、接口(interface)、数组(Array)

所有引用数据类型的默认值都是null。

 

差异:

基本数据类型

引用数据类型

在栈中进行分配   

在堆中进行分配,堆的读写速度远不及栈

变量名指向具体的数值

变量名指向存数据对象的内存地址

变量在声明之后java就会立刻分配给他内存空间

它以特殊的方式(类似C指针)指向对象实体(具体的值),这类变量声明时不会分配内存,只是存储了一个内存地址

基本类型之间的赋值是创建新的拷贝

对象之间的赋值只是传递引用

“==”和“!=”是在比较值

==”和“!=”是在比较两个引用是否相同,需要自己实现equals()方法

 

基本类型变量创建和销毁很快

类对象需要JVM去销毁

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值