- 1、本文档共50页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.左移位运算符() 运算符执行一个左移位。作左移位运算时,右边的空位补0。在不产生溢出的情况下,数据左移1位相当于乘以2。例如: int a=64,b; b=a1; //b=128 6.右移位运算符(与) 运算符执行一个右移位(带符号),左边按符号位补0或1例如: int a=16,b; b=a2; //b=4 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 运算符同样是执行一个右移位,只是它执行的是不带符号的移位。也就是说对以补码表示的二进制数操作时,在带符号的右移中,右移后左边留下的空位中添入的是原数的符号位(正数为0,负数为1);在不带符号的右移中,右移后左边留下的空位中添入的一律是0。 【例2.7】 Java中位运算符的使用 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 2.3.5 类型转换 Java程序里,将一种数据类型的常数或变量转换到另外的一种数据类型,称为类型转换。类型转换有两种:自动类型转换(或称隐含类型转换)和强制类型转换。 在实际中常会将一种类型的值赋给另外一种变量类型。如果这两种类型是兼容的,Java将执行自动类型转换。 简单的说,当把占用位数较短的数据转化成占用位数较长的数据时,Java执行自动类型转换,不需要在程序中作特别的说明。例如,下面的语句把int型数据赋值给long型数据,在编译时不会发生任何错误: int i=10; long j=i; Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 假若对主数据类型执行任何算术运算或按位运算,“比int小”的数据(char、byte、short)在正式执行运算之前,那些值会自动转换成int,这样一来,最终生成的值就是int类型。 整型、实型、字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算,转换从低级到高级。通常,表达式中最大的数据类型是决定了表达式最终结果大小的那个类型。例如:若将一个float值与一个double值相乘,结果就是double;如将一个int值和一个long值相加,则结果为long。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 不是所有的数据类型都允许隐含自动转换。例如,下面的语句把long型数据赋值给int型数据,在编译时就会发生错误: long i=10; int j=i; 这是因为当把占用位数较长的数据转化成占用位数较短的数据时,会出现信息丢失的情况,因而不能够自动转换。这时就需要利用强制类型转换,执行非兼容类型之间的类型转换。上面的语句写成下面的形式就不会发生错误: long i=10; int j=(int)i; Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 强制类型转换的格式是: (数据类型)变量名 经过强制类型转换,将得到一个在“()”中声明的数据类型的数据,该数据是从指定变量所包含的数据转换而来的。值得注意的是,指定变量本身不会发生任何变化。 将占用位数较长的数据转化成占用位数较短的数据时,可能会造成数据超出较短数据类型的取值范围,造成“溢出”。如: long i=10000000000; int j=(int)i; 因为转换的结果已
您可能关注的文档
- 《第15课近代科学技术革命.ppt
- 《第15课《近代科学技术革命》.ppt
- 《第16章Flash绘制图形和编辑对象.ppt
- 《第16章Java应用开发与课程设计实例.ppt
- 《第15讲:源代码相关内容简介.ppt
- 《第1章 操作系统概述.ppt
- 《第16章:生活费用的衡量.ppt
- 《第19章光的干涉.ppt
- 《第18课马克思主义的诞生.ppt
- 《第17次课02光的干涉0311级.ppt
- 2025届广西南宁市马山县高中联合体高三(最后冲刺)物理试卷含解析.doc
- 北京市第三十九中学2025届高三第一次调研测试物理试卷含解析.doc
- 辽宁省普兰店市第一中学2025届高三下学期联合考试物理试题含解析.doc
- 2025届福建省宁德市高中同心顺联盟校高考考前提分物理仿真卷含解析.doc
- 肥西县2025届高考物理必刷试卷含解析.doc
- 2025届湖南省常德市桃源一中高考物理一模试卷含解析.doc
- 井冈蜜柚授粉技术规程.docx
- 2025届湖北省重点高中高三3月份模拟考试物理试题含解析.doc
- 检验检测机构资质认定评审第6部分--告知承诺后续核查工作规范.docx
- 江苏省宿迁市沭阳县华冲高中2025届高三考前热身物理试卷含解析.doc
文档评论(0)