8位:Byte(字节型)
16位:short(短整型)、char(字符型)
32位:int(整型)、float(单精度型/浮点型)
64位:long(长整型)、double(双精度型)
最后一个:boolean(布尔类型)
java浮点型默认为double型,所以要声明一个变量为float型时,需要在数字后面加F或者f:
整数字面量默认都是int类型,所以在定义的long类型后面要加上L或l。小于32位的变量都是按照int结果去计算的。
类型转换主要在在 赋值、方法调用、算术运算 三种情况下发生。
a、赋值和方法调用 转换规则:从低位类型到高位类型自动转换;从高位类型到低位类型需要强制类型转换
获取数据类型
private static String getType(Object a) { return a.getClass().toString(); }
int num1 = 56; System.out.println(getType(num1)); double num2 = 23.06; System.out.println(getType(num2)); boolean f = true; System.out.println(getType(f)); class java.lang.Integer class java.lang.Double class java.lang.Boolean