千家信息网

Java基本数据类型的知识点有哪些

发表于:2024-10-01 作者:千家信息网编辑
千家信息网最后更新 2024年10月01日,这篇"Java基本数据类型的知识点有哪些"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇
千家信息网最后更新 2024年10月01日Java基本数据类型的知识点有哪些

这篇"Java基本数据类型的知识点有哪些"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"Java基本数据类型的知识点有哪些"文章吧。

相信学过Java的小伙伴们都知道,Java是强类型语言,所以Java对于数据类型的规范会相对严格。

它提供了八种基本类型(这里不讲解Void)。其中六种数字类型(四个整数型(默认是int 型),两个浮点型(默认是double 型)),一种字符类型,还有一种布尔型。

基础

我们先来一点干货!!

基本数据类型大小值域默认值包装器类型
boolean-true,falsefalseBoolean
char16 bit[0,216-1]'\u0000'Character
byte8 bit[-128,127]0Byte
short16 bit[-215,215-1]0Short
int32 bit[-231,231-1]0Integer
long64 bit[-263,263-1]0LLong
float32 bit[-3.4E38,3.4E38]0.0FFloat
double64 bit[-1.8E308,1.8E308]0.0DDouble

如果掌握了这些要点,那说明基础是不错的,有兴趣的话可以随小编再深入了解一下!!

深入

数据类型在计算机语言里面,是对程序所处理数据的抽象,它存在的意义是为了方便虚拟机为不同的数据分配更合适的空间。所以,对数据类型的理解自然与虚拟机分不开。

在 Java 虚拟机规范中,boolean 类型则被映射成 int 类型。具体来说,"true"被映射为整数 1,而"false"被映射为整数 0。这个编码规则约束了 Java 字节码的具体实现。

Java 虚拟机规范同时也要求 Java 编译器遵守这个编码规则,并且用整数相关的字节码来实现逻辑运算,以及基于 boolean 类型的条件跳转。这样一来,在编译而成的 class 文件中,除了字段和传入参数外,基本看不出 boolean 类型的痕迹了。

Java 的基本类型都有对应的值域和默认值。

可以看到,byte、short、int、long、float 以及 double 的值域依次扩大,而且前面的值域被后面的值域所包含。因此,从前面的基本类型转换至后面的基本类型,无需强制转换。另外一点值得注意的是,尽管他们的默认值看起来不一样,但在内存中都是 0。

在这些基本类型中,boolean 和 char 是唯二的无符号类型。boolean 类型的取值范围是 0 或者 1,char 类型的取值范围则是 [0, 65535]。通常我们可以认定 char 类型的值为非负数,这种特性十分有用,比如说作为数组索引等。

数据存储

Java 虚拟机每调用一个 Java 方法,便会创建一个栈帧。这种栈帧有两个主要的组成部分,分别是局部变量区,以及字节码的操作数栈。

在 Java 虚拟机规范中,局部变量区等价于一个数组,并且可以用正整数作为索引。除了 long、double 值需要用两个数组单元来存储之外,其他基本类型以及引用类型的值均占用一个数组单元。也就是说,boolean、byte、char、short 这四种类型,在栈上占用的空间和 int 是一样的,和引用类型也是一样的。

因此,当我们将一个 int 类型的值,存储到这些类型的字段或数组时,相当于做了一次隐式的掩码操作。举例来说,当我们把 0xFFFFFFFF(-1)存储到一个声明为 char 类型的字段里时,由于该字段仅占两字节,所以高两位的字节便会被截取掉,最终存入"\uFFFF"。

数据加载

Java 虚拟机的算数运算几乎全部依赖于操作数栈。也就是说,我们需要将堆中的 boolean、byte、char 以及 short 加载到操作数栈上,而后将栈上的值当成 int 类型来运算。

对于 boolean、char 这两个无符号类型来说,加载伴随着零扩展。举例来说,char 的大小为两个字节,在加载时 char 的值会被复制到 int 类型的低二字节,而高二字节则会用 0 来填充。

对于 byte、short 这两个类型来说,加载伴随着符号扩展。举个例子,short 的大小为两个字节。在加载时 short 的值同样会被复制到 int 类型的低二字节。如果该 short 值为非负数,即最高位为 0,那么该 int 类型的值的高二字节会用 0 来填充,否则用 1 来填充。

以上就是关于"Java基本数据类型的知识点有哪些"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。

类型 数据 字节 两个 知识 值域 内容 数组 整数 知识点 字段 存储 大小 操作数 符号 运算 举例来说 也就是 也就是说 单元 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 济南正规的服务器哪家好 中山大学网络安全学院简介 嘉兴营销软件开发管理 无锡联想服务器维修公司 在cmd中怎么找回删除的数据库 sqlite数据库损坏 内蒙古大数据网络技术开发计划表 IBM的数据库产品是啥 计算机网络技术全套课程代码 外行如何学习软件开发 佛山app软件开发多少钱 网络安全意识考题二 关于数据库定位记录的卷子 小型家庭服务器 杭州蓝牙软件开发 我的世界进入服务器客户端 无法打开数据库登录失败 设计问卷研究未成年人网络安全 基于数据分析的网络安全 cmd 管理员启动服务器 5个数据库视频 网络安全黑板报高中生简单 数据库的悲观锁 原理 政务服务网络安全会议领导发言稿 数据库异地备份最佳方法 软件开发去哪儿培训好 联通网络安全法停机 网络安全专精特新 水泥厂网络技术员年度总结 中信银行软件开发中心知乎
0