- 自动类型转换
*转换前的数据类型与转换后的类型兼容
*转换后的数据类型的表示范围比转换前的数据类型大
*字符和整数是可以进行数据转换的,整数和浮点数也是可以的
public static void main(String[] args) {
char ch1 = 97; // ASCII码 97 = ‘a’
char ch2 = 'a';
System.out.println(ch1);
System.out.println(ch2);
int a = 22;
float b = 1.5f;
System.out.printf("a = %d \n", a);
System.out.printf("b = %f \n", b);
System.out.println("a+b = " + (a+b));
System.out.printf("a / b = %f \n", a/b);
}
-
当表达式中的变量的类型不同是,Java 会自动把范围小的数据类型转换为范围大的数据类型,然后再进行计算
-
就是说当一个整数和双精度的浮点数计算时,Java 会把整数转化为浮点数,之后再进行计算,计算结果也会变成浮点数
ASCII 表
强制类型转换
- 语法
(欲转换的数据类型) 变量名称;
public static void main(String[] args) {
int a = 55;
int b = 9;
float g,h;
System.out.println("a = "+ a);
System.out.println("b = "+ b);
g = a/b;
h = (float)a/b; //进行强制转换
// 当两个整数相除时,小数点之后的数字会被舍去,使运算结果为整数,
System.out.println("g = "+ g);
// 要想得到浮点数,需要进行强制转换,可以把其中的一个整数转化为浮点数,或者全部转为浮点数再进行运算
System.out.println("h = "+ h);
}