Java-基础数据类型在内存中存储方式
首先8bit=1byte,内存地址一般以16进制表示(另:书面上的存储位置一般以h结尾,问就是我刷题刷到了)
1. 常量存储
存在JVM虚拟栈区,一般在栈帧的的局部变量区域,基本固定类型
序号 | 数据类型 | 数据名称 | 字节(byte) | 位数(bit) | 默认值 | 取值范围 | 取值范围 | 举例说明 |
1 | byte | 位 | 1 | 8 | 0 | -2^7,2^7-1 | -128~127 | byte b=10 |
2 | short | 短整数 | 2 | 16 | 0 | -2^15,2^15-1 | ’-32768~32767 | short s=10 |
3 | int | 整数 | 4 | 32 | 0 | -2^31,2^31-1 | -2147483648~2147483647 | int i=10 |
4 | long | 长整数 | 8 | 64 | 0 | -2^63,2^63-1 | ‘-9223372036854774808~9223372036854774807 | long l=10L |
5 | float | 单精度 | 4 | 32 | 0.0 | -2^31,2^31-1 | -2147483648~2147483647 | float f=10.0f |
6 | double | 双精度 | 8 | 64 | 0.0 | -2^63,2^63-1 | ‘-9223372036854774808~9223372036854774807 | double d=10.0d |
7 | char | 字符 | 2 | 16 | 空 | 0,2^16-1 | 0~32767 | char c='c' |
8 | boolean | 布尔值 | 1 | 8 | FALSE | true,false | boolean b=false |
2. 字符串对象存储
但是生成的字符串变量存储在栈帧中局部变量的位置,如果是new字符串生成的对象,则存放在堆区。