Java中boolean占几字节

技术Java中boolean占几字节这篇文章主要介绍“Java中boolean占几字节”,在日常操作中,相信很多人在Java中boolean占几字节问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家

本文主要介绍“Java中布尔型占用了多少字节”。在日常操作中,相信很多人对Java中布尔占用了多少字节有疑问。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮助大家解决“Java中布尔占用多少字节”的疑惑。接下来,请和边肖一起学习!

这是一个看似简单的问题,但实际上,通过深入调查可以发现一两个谜团。

让我们看看官方文件中的声明。

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.”

从上面可以清楚的看到,只有真假布尔值,这种数据类型只代表1bit的信息,但是并没有严格的声明它占用了多少空间,也就是说不管它占用了多少空间,只有1bit的信息才有意义。

‘ in rocle ‘ sjavavirtualmachine implementation,booleanarraysinjavapragraminglanguageareencodedas javavirtualmachinebytearray,使用using8bitsperbooleanelement ‘

在Oracle的Java虚拟机实现中,将Java语言中的布尔数组编码成Java虚拟机的字节数组,每个元素占用8位。

“TheJavaVirtualMachinedoesdirectlysupportbooleanarrays.Itsnewarrayinstruction(newarray)enablescreationofbooleanarrays.Arraysoftypebooleanareaccessedandmodifiedusingthebytearrayinstructionsbaloadandbastore(baload,bastore).”

Java虚拟机中虽然定义了boolean类型,但是支持是很有限的,没有专门的虚拟机指令。

同时在Java语言中,对boolean值的操作被替换成int数据类型。

再去看看Java虚拟机规范上是怎么写的。

Although the Java Virtual Machine defines a boolean type, it only provides very limited support for it. There are no Java Virtual Machine instructions solely dedicated to operations on boolean values. Instead, expressions in the Java programming language that operate on boolean values are compiled to use values of the Java Virtual Machine int data type.

“The Java Virtual Machine encodes boolean array components using 1 to represent true and 0 to represent false . 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.”

Java虚拟机使用1表示true,0表示false来编码boolean数组。

Java语言的boolean值被编译器映射成Java虚拟机的int类型的时候,也是一样的

到这里,得出一个结论:

boolean到底占几个字节,依赖于JVM

第一,无论Boolean占用多少字节,只有1bit的值是有意义的

第二,boolean类型被编译成int类型来使用,占4个byte。

第三,在Java虚拟机里,1表示true,0表示false。

至此,“布尔在Java中占用多少字节”的研究结束,希望能解决大家的疑惑。理论和实践的结合可以更好的帮助大家学习,所以赶紧试试吧!如果你想继续学习更多的相关知识,请继续关注网站,边肖会继续努力,给大家带来更多实用的文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/67427.html

(0)

相关推荐

  • http协议无状态中的 "状态" 指的是什么

    技术http协议无状态中的 “状态” 指的是什么这篇文章主要介绍“http协议无状态中的 “状态” 指的是什么”,在日常操作中,相信很多人在http协议无状态中的 “状态” 指的是什么问题上存在疑惑,小编查阅了各式资料,

    攻略 2021年10月22日
  • MySQL如何在线开启/关闭GTID

    技术MySQL如何在线开启/关闭GTID小编给大家分享一下MySQL如何在线开启/关闭GTID,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一

    攻略 2021年11月6日
  • MySQL常用拼接语句有哪些

    技术MySQL常用拼接语句有哪些这篇文章给大家分享的是有关MySQL常用拼接语句有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.拼接查询所有用户SELECT DISTINCT

    攻略 2021年10月30日
  • 如何解析PHP及配置文件

    技术如何解析PHP及配置文件这篇文章将为大家详细讲解有关如何解析PHP及配置文件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。PHP是什么PHP是Hypertext
    Pr

    攻略 2021年11月23日
  • Percona 5.5如何定位未使用的索引

    技术Percona 5.5如何定位未使用的索引这篇文章主要为大家展示了“Percona 5.5如何定位未使用的索引”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Percona

    攻略 2021年11月2日
  • php.ini状态设置在哪里(php.ini怎么配置)

    技术php.ini如何禁用方法这篇文章将为大家详细讲解有关php.ini如何禁用方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 php.ini禁用方法:

    攻略 2021年12月19日