- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
类型转换和分支语句
类型转换 此资料由itjob教程网共享,如有转载使用请注明出处
在赋值的信息可能丢失的地方,编译器需要程序员用类型转换(typecast)的方法确认赋值。例如,它可以挤压一个long值到一个int变量中。显式转型做法如下:
long bigValue = 99L;
int squashed =int)bigValue;
在上述程序中,期待的目标类型被放置在圆括号中,并被当作表达式的前缀,该表达式必须被更改。一般来讲,建议用圆括号将需要转型的全部表达式封闭。否则,转型操作的优先级可能引起问题。
升级和表达式的类型转换
当没有信息丢失时,变量可被自动升级为一个较长的形式(如:int至long的升级)
long bigval = 6; // 6 is an int type, OK
int smallval = 99L; // 99L is a long, illegal
double z = 12.414F; // 12.414F is float, OK
float z1 = 12.414; // 12.414 is double, illegal
一般来讲,如果变量类型至少和表达式类型一样大(位数相同),则你可认为表达式是赋值兼容的。
对 + 运算符来说,当两个操作数是原始数据类型时,其结果至少有一个int,并且有一个通过提升操作数到结果类型、或通过提升结果至一个较宽类型操作数而计算的值,这可能会导致溢出或精度丢失。例如:
short ab,c
a = 1;
b = 2;
c = a + b;
上述程序会因为在操作short之前提升每个short至int而出错。然而,如果c被声明为一个int,或按如下操作进行类型转换:
c = (short)(a + b);
则上述代码将会成功通过。例1编写一个测试类,在其中定义基本类型和字符串类型public class TestVar {
public static void main(String[] args) {
int age = 20;
float fVar = 5.89f;
double dVar = 2.78d;
String str = good;
char cVar = A;
System.out.println(age);
System.out.println(fVar);
System.out.println(dVar);
System.out.println(str);
System.out.println(cVar);
}
}
结果如下:
例2在TelCom公司中有几百名员工,他们有各自的姓名,部门;tom和bob分别在管理部和开发部,编写代码实现该描述。
编写员工类:Employee类结构如图
public class Employee {
private String name;
private String department;
public Employee() {
this(, );
}
public Employee(String name, String department) {
this.name = name;
this.department = department;
}
public String getName() {
return name;
}
public String getDepartment() {
return department;
}
public static void main(String[] args) {
Employee tom = new Employee(tom, Finance);
Employee bob = new Employee(bob, Dev);
System.out.println(tom.getName() + : + tom.getDepartment());
System.out.println(bob.getName() + : + bob.getDepartment());
}
}
运行结果如下:
分支语句
条件语句使部分程序可根据某些表达式的值被有选择地执行。Java编程语言支持双路if和多路switch分支语句。
if,else语句
基本句法:
if ( /* 布尔表达式 */ ){
// 语句或块;
} else {
// 语句或块;
}在Java编程语言中,if()用的是一个布尔表达式,而不是数字值,这一点与C/C++不同。前面已经讲过,布尔类型和数字类型不能相互转换。因而,如果出现下列情况:
if ( x ) // x is
您可能关注的文档
最近下载
- LBT 339-2025 北方地区 绿色食品设施莴笋生产操作规程.pdf VIP
- 基础护理学病情观察及危重患者的抢救和护理.pptx VIP
- 八年级下册道德与法治电子课本(附2023年教材变动内容).doc VIP
- 旅游概论-旅游者.pptx VIP
- 亚龙156A电气安装-电气培训PPT(项目二).ppt VIP
- 【公开版】《2023年美年健康体检大数据蓝皮书》.pdf VIP
- 《枫桥夜泊》的教学设计一等奖 .docx VIP
- 大类资产配置新框架,比特币和黄金:新旧时代的“代货币”.pdf VIP
- 2025年冰雪旅游行业投资回报分析报告.docx
- 2025年中国国家重点实验室建设行业供需策略分析及市场供需预测报告.docx
文档评论(0)