class MyClass { public static void main(String[] args){ //整形 byte(1) short(2) int(4) long(8) //浮点 float(4) double(8) //字符 char(2) //布尔 boolean(1) //变量定义必须赋值才可以使用)整形默认是int 浮点默认是double 定义long 加L 定义float 加F) //当数据类型不一样,将会发生数据类型转换: // 1、自动类型转换(隐式) // 1、特点:数据范围从小到大(赋值左边的类型范围大于右边(float范围大于long)) // 2、强制类型转换(显式) // 1、特点:数据范围从大到小(赋值左边的类型范围小于右边(float范围大于long))并且值没有超过范围 //byte/short/char 运算时会自动转化为int 定义时没有超过其范围则java编译器会自动加(byte) byte bb=40;(40默认是int byte bb=(byte)40;) Integer age=10; System.out.println(age); System.out.println(12); System.out.println(-3.14); System.out.println('A'); System.out.println(true); { int num=30; } int num=(int)20L; System.out.println(num); float num2=30L;//自动转换 System.out.println(num2);//30.0 int num3=(int)3.56;//强制类型转换 System.out.println(num3);//3 byte num4=12; byte num5=23; int ret=num4+num5;//byte/short/char 运算时会自动转化为int System.out.println(ret); printObj(true); } public static void printObj(Object obj){ System.out.println(obj.toString()); } }