数据类型转换——自动转换
1 /* 2 当数据类型不一样时,将会发生数据类型转换。 3 4 自动类型转换(隐式) 5 1. 特点:代码不需要进行特殊处理,自动完成。 6 2. 规则:数据范围从小到大。 7 8 强制类型转换(显式) 9 */ 10 public class Demo01 { 11 public static void main(String[] args) { 12 System.out.println(1024); // 这就是一个整数,默认就是int类型 13 System.out.println(3.14); // 这就是一个浮点数,默认就是double类型 14 15 // 左边是long类型,右边是默认的int类型,左右不一样 16 // 一个等号代表赋值,将右侧的int常量,交给左侧的long变量进行存储 17 // int --> long,符合了数据范围从小到大的要求 18 // 这一行代码发生了自动类型转换。 19 long num1 = 100; 20 System.out.println(num1); // 100 21 22 // 左边是double类型,右边是float类型,左右不一样 23 // float --> double,符合从小到大的规则 24 // 也发生了自动类型转换 25 double num2 = 2.5F; 26 System.out.println(num2); // 2.5 27 28 // 左边是float类型,右边是long类型,左右不一样 29 // long --> float,范围是float更大一些,符合从小到大的规则 30 // 也发生了自动类型转换 31 float num3 = 30L; 32 System.out.println(num3); // 30.0 33 } 34 }
实操:
1 package com.java.demo; 2 3 public class Demo_1 { 4 public static void main(String[] args){ 5 int i = 1; 6 byte b = 2; 7 //byte x = b + i; 会报错 8 //int类型和byte类型运算,结果是int类型 9 int c = b + i; 10 System.out.println(c); 11 } 12 }