package ch02;
public class TypeCase {
/*这个程序的目的是为了让初学者明白什么呢?
* 为了让他明白在Java中数据类型是可以通过运算来进行变量的改变与转换
* 转换是可以从定义空间时最小的变量转换成比之空间大的变量
* 反之则需要进行强制性类型转换,而不能自动转换*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int i=100;
char c1=’a’;
byte b=0b11;//二进制自变量(字节型)
long l=567L;
float f=1.89f;
double d=2.1;
//char类型的变量c1自动转换为与i一致的int类型变量进行运算
//char->int
int i1=i+c1;
//int类型的变量i1自动转换成与l一致的long类型参与运算
//int->long
long l1=1-i1;
//byte型变量b自动转换为与f一致的float型变量进行运算
float f1=b*f;
/*int类型的变量i1自动转换为与f1一致的float类型,f1/i1的计算结果为float型。
* 然后转换为与d一致的double类型
*/
double d1=d+f1/i1;
System.out.println("i1="+i1);
System.out.println("l1="+l1);
System.out.println("f1="+f1);
System.out.println("d1="+d1);
}
}## Java中几个变量的自动类型转换 ##