Java基础数据类型有哪些?

描述

变量(一)

Java基础数据类型有哪些?

**他们数据占用几个字节?

**

对应的封装类是什么?

它们区别是什么?

boolean占几个字节?

基本类型 大小 (字节) 默认值 范围 封装类
byte 1 (byte)0 -128~127 Byte
short 2 (short)0 -2 ^15 ^ ~2 ^15^ -1 Short
int 4 0 -2^31^ ~2 ^31^ -1 Integer
long 8 0L -2^63^ ~2 ^63^ -1 Long
float 4 0.0f -3.403E38~3.403E38 Float
double 8 0.0 -1.798E308~1.798E308 Double
boolean false Boolean
char 2 \\u0000(null) Character

区别:

  1. 默认值不同;int是基本数据类型,Integer是int的封装类,是引用类型。int默认值是0,而Integer默认值是null。
  2. 基本数据类型在声明时系统会自动给它分配空间,而引用类型声明时只是分配了引用空间,必须通过实例化开辟数据空间之后才可以赋值。数组对象也是一个引用对象,将一个数组赋值给另一个数组时只是复制了一个引用,所以通过某一个数组所做的修改在另一个数组中也看的见。

boolean内存占用:

  1. boolean类型被编译为int类型,等于是说JVM里占用字节和int完全一样,int是4个字节,于是boolean也是4字节。Java语言所操作的boolean值,在编译之后都使用Java虚拟机中的int数据类型来代替,而boolean数组将会被编码成Java虚拟机的byte数组,每个元素boolean元素占8位。可以得出boolean类型占了单独使用是4个字节。使用int的原因是,对于当下32位的处理器(CPU)来说,一次处理数据是32位(这里不是指的是32/64位系统,而是指CPU硬件层面),具有高效存取的特点。
  2. boolean数组在Oracle的JVM中,编码为byte数组,每个boolean元素占用8位=1字节
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分