Java从入门到精通——变量及其数据类型

数据类型

思维导图

Java要确定每种基本数据类型所占存储空间的大小。他们的大小并不像其他大多数语言那样随机器硬件架构的变化而变化。

基本数据类型

基本类型字节大小(bit)默认值封装类取值范围
byte1(byte)0Byte − 2 7 ~ 2 7 − 1 -2^7 ~ 2^7-1 27271
short2(short)0Short − 2 15 ~ 2 15 − 1 -2^{15} ~ 2^{15}-1 2152151
int40Integer − 2 31 ~ 2 31 − 1 -2^{31} ~ 2^{31}-1 2312311
long80LLong − 2 63 ~ 2 63 − 1 -2^{63} ~ 2^{63}-1 2632631
float40.0fFloat − 3.043 E 38 ~ 3.043 E 38 -3.043E38 ~ 3.043E38 3.043E383.043E38
double80.00dDouble − 1.798 E 308 ~ 1.798 E 308 -1.798E308 ~ 1.798E308 1.798E3081.798E308
boolean-falseBoolean t r u e / f a l s e true / false true/false
char2\u0000(null)Character单个字符

所有数值类型都有正负号,所以不要去寻找无符号的数值类型。
boolean类型所占存储空间的大小没有明确指定,仅定义为能够取字面值true或者false
基本类型具有包装器类,是的可以在堆中创建一个非基本对象,用来表示对应的基本类型。

基本数据类型和引用数据类型的区别

  1. 在内存中的存储
  • 基本数据类型的存储原理:基本数据类型不存在“引用”的概念,是直接存储在内存中的内存栈上的,数据本身就是存储在栈空间里面。
  • 引用数据类型的存储原理:引用类型继承于Object类(也是引用类型)是按照Java中存储对象的内存模型来进行数据存储的,使用Java内存堆和内存栈来进行这种类型的数据存储,简单地讲,“引用”是存储在有序的内存栈上的,而对象本身的值存储在内存堆上的;
    存储方式
局部变量(方法中声明的变量)

局部变量既可以是基本数据类型的变量,也可以是引用数据类型的变量。

当声明是基本数据类型的变量时,其变量名及值(变量名及值是两个概念)是放在JAVA虚拟机栈内存

当声明的是引用数据类型的变量时,所声明的变量(该变量实际上是在方法中存储的是内存地址值)是放在JAVA虚拟机的栈内存中,该变量所指向的对象是放在堆内存中的。

全局变量(类中声明的变量,又称 成员变量)

全局变量既可以是基本数据类型的变量 也可以是引用数据类型的变量。

当声明是基本数据类型的变量时,其变量名及其值放在堆内存中的

当声明的是引用数据类型的变量时,其声明的变量仍然会存储一个内存地址值,该内存地址值指向所引用的对象。引用变量名和对应的对象仍然存储在相应的堆内存

  1. 传递方式
  • 基本数据类型:调用方法时作为参数是按数值传递的
  • 引用数据类型:调用方法时作为参数是按引用传递的

三连博主,每天给您分享编程小知识!!!

阅读更多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值