`
irfen
  • 浏览: 202946 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java八种基本数据类型占用字节数空间介绍

阅读更多

大家都知道在java中有八种基本数据类型,他们所占得空间当然也是不一样的。所占空间如下:

byte:1字节

short:2字节

int:4字节

long:8字节

char:2字节

float:4字节

double:8字节

boolean:不确定

本来boolean应该只占用1bit也就是1/8字节的,但实际上,由于Java的实际寻址单元最小是byte即1字节,所以所以实际上boolean占用的是可能是1bit,也可能是更多,这个是不确定的。下面是Sun的官方介绍。

boolean: The boolean data type has only two possible values: true and false.
Use this data type for simple flags that track true/false conditions. This data type represents one bit of information,
but its “size” isn’t something that’s precisely defined.

再下面是JVM虚拟机规范的介绍(JVM规范第2版 3.3.4节):

Where Java programming language boolean values are mapped by compilers to values of Java virtual machine type int, the compilers must use the same encoding.

所以只是单纯的boolean b = true;这里的b占用4个字节,和int一样。

而紧接着下面还有一段:

Arrays of type boolean are accessed and modified using the byte array instructions
In Sun’s JDK releases 1.0 and 1.1, and the Java 2 SDK, Standard Edition, v1.2, boolean arrays in the Java programming language are encoded as Java virtual machine byte arrays, using 8 bits per boolean element.

所以说boolean[] b = new boolean[10];这样的数组中每个值占用的空间是1字节。

 

博客已搬家,请访问http://irfen.me

1
2
分享到:
评论

相关推荐

    Java程序设计基础:基本数据类型.pptx

    掌握Java基本数据类型 掌握直接量的表示 计算机的基本作用就是做运算。运算的数据可以由用户输入、从文件获得。 我们可以把数据进行归类,整数、小数、一串字符、单个字符。 数据类型 例如 课程名称:“高等数学”、...

    阿里面试题-JAVA基础.docx

    JAVA基础 JAVA中的几种基本数据类型是什么,各自占用多少字节。 String类能被继承吗,为什么。 String,Stringbuffer,StringBuilder的区别。 ArrayList和LinkedList有什么区别。

    C/C++与Java各数据类型所占字节数的详细比较

    本篇文章主要是对C/C++与Java各数据类型所占字节数进行了详细的对比。需要的朋友可以过来参考下,希望对大家有所帮助

    【后端】java基础(2.2)java基本语法之基本数据类型和变量

    所以,本章主要讲Java的八大基本数据类型。 详见表格: 基本数据类型 占用字节 默认值 封装器类 byte(字节型) 1 0 Byte short(短整型) 2 0 Short int(整型) 4 0 Integer long(长整型) 8 0.0l Long float(浮点...

    Java4Android开发教程(五)java的基本数据类型特征

    java的数据类型分为基本数据类型和引用数据类型。   基本数据类型分为数值型、字符型(char)、布尔型(boolean)   数值型变量   1、整数型 类型 占用存储空间 表示范围 byte 1字节Byte -128~...

    Java 关键字、标识符、注释、常量与变量、数据类型,算术、赋值、比较、逻辑、位、三元运算符和流程控制、break、continue

    double占用八个字节,数字大小为4.9E-324~1.7E+308, -4.9E-324~-1.7E+308 。 char占两个字节,数字大小为0———216-1,是unicode编码。  字符的本来面目,我们为什么可以直接将一个数字赋给字符变量。 ...

    死磕Java之Java数据类型的来龙去脉

    文章目录一、数据类型分类二、基本数据类型三、你真的了解包装类吗?(一)面试题:Java已经有了int等基本类型了,为什么还需要包装类?...占用字节数 占用位数 数据表示范围 byte 1 1 * 8 = 8 -27 ~ 2

    java课后练习题答案

    Java中各种数据类型占用固定的内存长度,与具体的硬件平台无关,体现了Java的跨平台特点。 而C语言中没有具体规定以上类型数据所占据内存字节数,只要long型数据长度不短于int型,short型不长于int型,具体如何实现...

    java_se_learning:java se learning project JAVA基础学习笔记和演示案例代码项目

    JAVA中的基本数据类型有四类八种:整数类型、小数类型、字符类型、布尔类型。 整数类型:byte、short、int、long 占用字节: 1 2 4 8 小数类型:float、double 占用字节: 4 8 字符类型:char 占用字节: 2 布尔...

    Java面试考题锦集之Java基础

    文章目录数据类型Java中的八大类型及其包装类型(占用字节数)Java面向对象常见Java 接口\抽象类?重载和重写?Java List高频ArrayList和LinkedList的区别?分别用在什么场景?常见少见Java Set常见Set是有序的,这句...

    JAVA复习资料

    21、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码字符占用 2 字节内存空间,这样,无论是中文字符还是英文字符,每个都是占用2 字节内存空间。 22、在Java程序中定义的类有两种成员: 静态...

    java基础课件ppt

    java基础课件ppt与上机练习题....所有的数据类型所占用的字节数都是固定的,并且和实现无关,因此在Java中没有sizeof操作符。 不必死记这些关键词,当理解每个关键词的含义后,自然就记住了所有的关键词。

    JAVA基础——JAVA的五种引用类型及引用队列

    JAVA 是一种面向对象的语言,在 JAVA 程序运行时,对象是存储在堆内存(Heap)中的,C/C++ 中是通过指针来访问所谓对象(结构体)的,而 JAVA 则是通过引用来访问对象,也就是说,引用指向了对象在堆内存中的地址,...

    Java面试题总览

    1. JAVA中的几种基本数据类型是什么,各自占用多少字节。 2. String类能被继承吗,为什么。 3. String,Stringbuffer,StringBuilder的区别。 4. ArrayList和LinkedList有什么区别。 5. 讲讲类的实例化顺序,比如...

    JAVA期末考试复习试卷-new.doc

    2、 Java的各种数据类型所占用的内存长度与具体软硬件环境有关。 ( N) 3、 静态初始化器是在其所属的类加载内存时由系统自动调用执行的方法。 ( N) 4、 与C语言不同的是,Java语言中的数组元素下标总是从1开始...

    Java程序设计基础:创建String字符串.pptx

    一般程序需要处理大量文本数据Java语言的文本数据被保存为字符或字符串类型。 若干个字符在计算机里面如何存储? 如何引用呢? 引入 例如 “320106199503150101” String类:连接、查找、比较等 引入 String是Java库...

    java 面试题 总结

    Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类 booleanBoolean charCharacter byteByte shortShort intInteger longLong floatFloat doubleDouble ...

    Java虚拟机

    6.4.1 字节码与数据类型 6.4.2 加载和存储指令 6.4.3 运算指令 6.4.4 类型转换指令 6.4.5 对象创建与访问指令 6.4.6 操作数栈管理指令 6.4.7 控制转移指令 6.4.8 方法调用和返回指令 6.4.9 异常处理指令 ...

    Java程序设计习题(含答案解析).doc

    ( F ) 21.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。( T) 22.容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。( F) 23、Java是不区分大小写的语言。( F) 24、Java的源代码中...

    Java经典入门教程pdf完整版

    这些类 Smartcard版本只支持 Boolean与Bytc这两种Java基本类,此版本定位在 SmartCard 的应用上 四:闲话 ava 1:Java历史 在上世纪90年代初,sun公司有一个叫做 Green的项目,目的是为家用消费电子广品 开发一个分布式...

Global site tag (gtag.js) - Google Analytics