java基础之基本数据类型

Posted llnqdx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java基础之基本数据类型相关的知识,希望对你有一定的参考价值。

众所周知,java的基本类型有8种,分别是byte,short,int,long,float,double,char,boolean

根据类型划分,又可分为数字类型,浮点型,字符型,布尔型四种

其中byte,short,int,long为数字类型,float,double为浮点型,char为字符型,布尔型只有boolean。

类型 基本类型 占用字节数 MIN_VALUE MAX_VALUE
数字 byte 1 -128 127
short 2 -32768 32767
int 4 -2147483648 2147483647
long 8 -9223372036854775808 9223372036854775807
浮点 float 4 1.4E-45 3.4028235E38
double 8 4.9E-324 1.7976931348623157E308
字符 char 2 0 65535
布尔 boolean 1 or 4    

关于boolean占用字节数,这里要特殊说明一下。

从内存来看,只占一个bit。编译后boolean类型的值只有true or false,即0和1表示,只占一个bit。

虽然编译后只占一位,但是计算机处理的最小单位是字节,即8个bit。因此不足的补零。二进制存储中,1表示为0000 0001,0表示为0000 0000,由此看来,boolean占用一个字节。

从JVM角度来描述,boolean类型又占4个字节。JVM规范中,没有提供boolean字节码指令,在处理java中boolean类型数值时,将其转换为int进行处理,boolean数组将转为byte数组。由此来看,boolean类型占用4字节。

关于JVM处理boolean值时,为何将其转换为int类型?

对于32位CPU来说,处理数据为32位,便于更高效的存储。

 

以上是关于java基础之基本数据类型的主要内容,如果未能解决你的问题,请参考以下文章

Java面试之SE基础基本数据类型

Java面试总结之SE基础基本数据类型

JAVA基础之基本数据类型

Java基础学习笔记十四 常用API之基本类型包装类

Java基础入门之基本数据包装类以及简单转换

java基础之数据类型/基本运算符