🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 数据类型转换_自动转换 ``` /** * 当数据类型不一样时,将会发生数据类型转换 * 自动类型转换(隐士) * 1.特点:代码不需要进行特殊处理,自动完成 * 2.规则:数据范围从小到大 */ public class DemoDataType { public static void main(String[] args) { System.out.println(1024);//这就是一个整数,默认就是int类型 System.out.println(3.14);//这就是一个浮点数,默认就是double类型 //左边是long类型,右边默认int类型, //int->long long类型大于int类型:符合了数据范围从小到大的要求 //这一行代码发生了自动转换类型 long num1 = 100; System.out.println(num1); //100 //float->double double类型大于float类型:符合数据范围从小到大的要求 //这一行发生了自动转换类型 double num2 = 2.5F; System.out.println(num2); //long->float float类型大于long类型:符合数据范围从小到大的要求 //这一行发生了自动转换类型 float num3 = 30L; System.out.println(num3); } } ``` ## 数据类型转换_强制转换 ``` /** * 强制类型转换 * 1.特点:代码需要进行特殊的格式处理,不能自动完成 * 2.格式:范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据 * 例如 int num = (int)100L; */ public class DemoDataType2 { public static void main(String[] args) { //等号左边是int类型,右边是long类型。 //long->int 不是从小到大 //不能发生自动类型转换 // int num = 100L; // System.out.println(num); //强制转换 int num = (int)100L; System.out.println(num); } } ```