public class VariableTest4 {
public static void main(String[] args) {
//1.编码情况(1):
long l = 123321;//结尾没有“l”或“L”,依旧能正常编译
System.out.println(l);
//long l1 = 21654165131615;//编译失败:过大的整数
long l1 = 21654165131615L;
//未加“l或L”时,会自动定义为int型,但当定义的数大于int的取值范围时,会出现错误
//************************
//float f1=52.1;//编译失败:(cannot convert from double to float),folat型必须要加“f”或“F”
float f1=52.1f;
float f2=(float)52.1;
//注意:直接写的52.1是double型的,系统定义为52.100000……,当转入float时,可能会形成数据损失,因此系统默认不通过!!!
//相同的到理,short型的s=s+2,其中2是int型,无法赋值给short型的s,系统同样会报错!!!
//2.编码情况(2)
//整型常量,默认类型未int型
//浮点型常量,默认类型为double型
byte b=12;
//byte b1 = b+1;//编译失败(cannot convert from int to byte)
//float f1=b+12.3;//编译失败(cannot convert from double to float)
}
}
输出:
123321