【Java开源代码栏目提醒】:网学会员--在 Java开源代码编辑为广大网友搜集整理了:BasicTypeChange.java绩等信息,祝愿广大网友取得需要的信息,参考学习。
package com.zf.s2; //创建一个包
public class BasicTypeChange { //修饰基本数据类型转换的类
private void typeAutoUpgrade() { //基本类型的自动提升
byte b = 44;
char c = 'b';
short s = 1024;
int i = 40000;
long l = 12463l;
float f = 35.67f;
double d = 3.1234d;
//result声明为其他类型会出错,除非进行类型转换
double result = (f * b) + +(l * f) + (i / c) - (d * s);
System.out.print(" 结果 :" + result+" = ");
System.out.println((f * b) + " + " + (l * f) + " + " + (i / c) + " - "
+ (d * s)); //输入经过运算获得的结果
}
private void autoChange() { //基本类型的自动转换
char c = 'a';
byte b = 44;
short s0 = b;
int i0 = s0;
int i1 = c;
long l = i0;
float f = l;
double d = f;
float fl = 1.7f;
double dou = fl;
System.out.println("fl = " + fl + "; dou = " + dou);
// 一个数从一种类型转换成另外一种类型,再转换回来时,值还是一样。
fl = (float)dou;
System.out.println("fl = " + fl + "; dou = " + dou);
}
private void forceChange() { //强制类型转换
double d = 123.456d;
float f = (float) d; //将double类型强转成float
long l = (long) d; //将double类型强转成long
int i = (int) d; //将double类型强转成int
short s = (short) d; //将double类型强转成short
byte b = (byte) d; //将double类型强转成byte
System.out.print("d = " + d + "; f = " + f + "; l = " + l);
System.out.println("; i = " + i + "; s = " + s + "; b = " + b);
d = 567.89d;
// 下面的转换首先进行截断操作,将d的值变为567,因为567比byte的范围256还大,
// 于是进行取模操作,567对256取模后的值为55
b = (byte) d;
System.out.println("d = " + d + "; b = " + b);
}
public static void main(String[] args) { //Java
程序主入口方法
BasicTypeChange change = new BasicTypeChange();//实例化对象
change.typeAutoUpgrade(); //调用基本类型的自动提升方法
change.autoChange(); //调用基本类型的自动转换方法
change.forceChange(); //调用强制类型转换方法
}
}