版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
模块二Java语言基础目录/Contents0102Java基本语法变量和数据类型转换0304运算符的使用选择结构语句的使用目录/Contents0506循环结构语句的使用数组的使用07方法的使用变量和数据类型转换任务二掌握变量的定义,能够定义基本数据类型的变量学习目标
先定一个小目标!掌握自动类型转换,能简述什么是自动类型转换,以及自动类型转换需要满足的条件掌握强制类型转换,能够简述什么是强制类型转换,以及在程序中实现强制类型转换2.2.1变量程序运行期间,随时可能产生一些临时数据,应用程序会将这些数据保存在内存单元中,并通过标识符来访问和操作。这些用于标识内存单元的标识符就称为变量,而内存单元中存储的数据即为变量的值。2.2.1变量1.变量的声明变量的声明是指在代码中明确的指定变量的类型和名称,以便编译器识别变量并为其分配合适的存空间。声明变量的语法格式如下:数据类型变量名[,变量名2……];上述语法格式说明:变量名是为变量指定的标识符,用于唯一地标识变量。变量的命名需要遵守标识符的命名规则。一条语句中可以同时声明多个变量,变量名之间用逗号分隔。2.2.1变量2.变量的定义变量的定义是指在声明的基础上为变量分配内存空间并选择性地为其赋予初始值,可以在声明变量时进行赋值操作,也可以在后续代码中进行赋值操作。定义变量的语法格式如下:数据类型变量名=初始值;变量的初始值可以是常量、表达式或者其他变量的值。示例代码如下。intx=25;inty=x;2.2.1变量下面通过一个案例演示Java中多种数据类型的变量定义,案例要求输出一个商品的信息,包括编号、名称、价格等。Example01.java源代码案例演示2.2.1变量案例运行结果如下图所示。案例演示2.2.1变量3.变量的作用域变量具有一定的可访问范围,这个范围被称为变量的作用域。外层大括号为x的作用域内层大括号为y的作用域。2.2.1变量案例演示下面通过一个案例演示变量的作用域,该案例要求在不同代码块内定义和使用变量来实现。Example02.java源代码2.2.1变量案例演示案例的运行结果如下图所示。将Example02.java文件中的x=y;移动到第8行后再次运行。2.2.2数据类型转换在实际开发中,程序中不同的组件或模块可能使用不同的数据类型来表示相同或相关的信息。为了使这些组件或模块能够相互交互和通信,需要进行数据类型转换以保证数据的有效传递和相互兼容。Java中数据类型的转换形式分为两种,分别是自动类型转换和强制类型转换。2.2.2自动类型转换自动类型转换是指在不同数据类型之间进行操作或赋值时,编译器会自动完成类型转换的过程,无须显示地编写类型转换的代码。自动类型转换需要满足的条件。两种数据类型彼此兼容,即二者在语义上或逻辑上是相关联的。目标类型的取值范围大于源类型的取值范围。bytea=10;intb=a;2.2.2自动类型转换不同类型数据进行运算操作时,自动类型转换也可能发生。编译器根据运算要求和操作数的类型自动将其中一个操作数转换为取值范围更大的数据类型。常见的自动类型转换如下。整数类型之间的转换。取值范围小的整数类型数据,其数据类型可以自动转换为取值范围大的整数类型。整数类型转换为float类型。其他类型转换为double类型。2.2.2自动类型转换案例演示下面通过一个案例演示自动类型转换。Example03.java源代码2.2.2自动类型转换案例演示案例运行结果如图所示。2.2.2自动类型转换自动类型转换还会发生在表达式中,表达式是指由操作数和运算符组成的一个式子,当表达式中操作数包含多个基本数据类型的变量时,低取值范围较小的操作数会自动转换成取值范围较大的数据类型操作数,以便与取值范围较大的操作数相匹配,这就是表达式数据类型数据类型的自动提升。表达式自动类型提升规则如下。操作数中的byte类型、short类型和char类型将自动提升为int类型。表达式的数据类型自动提升到,表达式中取值范围最大的操作数的数据类型。2.2.3强制类型转换强制类型转换也称为显式类型转换,指的是两种数据类型之间的转换需要进行显式的声明。当两种类型彼此不兼容,或者目标类型取值范围小于源类型时,自动类型转换无法进行,这时就需要进行强制类型转换。2.2.3强制类型转换案例演示下面通过一个案例演示,转换彼此不兼容两种类型的情况。在本例中,使用int类型的变量为byte类型的变量赋值。Example04.java源代码2.2.3强制类型转换案例演示案例的运行结果如下图所示。2.2.3强制类型转换强制类型转换的格式。目标数据类型变量名=(目标类型)值;
强制类型转换时,如果将取值范围较大的数据类型强制转换为取值范围较小的数据,可能会导致数据的截断或精度丢失。2.2.3强制类型转换案例演示将Example04.java文件中的第4行代码修改为如下代码。byteb=(byte)a;修改后再次运行文件Example04.java,运行结果如下图所示。2.2.3强制类型转换为什么a和b的值不一样?2.2.3强制类型转换案例演示int类型的变量a占4个字节,byte类型的变量b占1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026贵州黔南州贵定县招聘公益性岗位人员5人考试参考试题及答案解析
- 2026广西中烟工业有限责任公司博士后科研工作站博士后招聘6人考试备考题库及答案解析
- 2025-2026学年合作模式教案幼儿
- 2026年中石油燃料油有限责任公司校园招聘笔试模拟试题及答案解析
- 2026云南丽江市永胜县发展和改革局“本籍人员回引计划”实施人员1人考试参考试题及答案解析
- 2026年四川省产业振兴发展投资基金有限公司校园招聘笔试备考题库及答案解析
- 建筑物抗震施工技术方案
- 2026年深圳市投资控股有限公司校园招聘考试备考试题及答案解析
- 2026年中国宝武钢铁集团有限公司校园招聘笔试参考题库及答案解析
- 生态恢复水体富营养化治理
- 基于SLP法的京东物流园3C类仓库布局优化研究
- 2025年高等教育工学类自考-02200现代设计方法历年参考题库含答案解析(5套典型考题)
- 一带一路战略与国际合作考核试题及答案探讨2025年
- 神经外科手术告知风险管理体系构建
- 2025中国临床肿瘤学会CSCO肿瘤厌食-恶病质综合征诊疗指南解读课件
- 2025年人教版小学一年级科学(上册)期末试卷附答案
- 租用员工车辆管理制度
- 人防工程用电管理制度
- 记账实操-货代公司账务处理
- 湖北省襄阳市襄城区2025年中考适应性考试数学试题(含答案)
- 磷酸泄漏现场处置方案
评论
0/150
提交评论