1.变量类型转换
1.1:自动类型转换
自动类型转换也称为隐式类型转换,是指两种数据类型在转换的过程中不需要显示声明,由编译器自动完成。自动类型转换必须同时满足两个条件:一是两种数据类型彼此兼容
;二是目标类型的取值范围大于源类型的取值范围
。例如:
byte b = 3;
int x = b;
除了以上上述例子演示的情况,还有很多类型之间可以进行自动类型转换。
(1)整数类型之间可以实现转换
:byte类型的数据可以赋值给short、int、long类型的变量;short、char类型的数据可以赋值给int、long类型的变量;int类型的数据可以赋值给long类型的变量。
(2)整数类型转换为float类型
:byte、char、short、int类型的数据可以赋值给float类型的变量。
(3)其他类型转换为double类型
:byte、char、short、int、long、float类型的数据可以赋值给double类型的变量。
1.2:强制类型转换
强制类型转换也称为显示类型转换,是指两种数据类型之间的转换需要进行显示声明。当两种类型彼此不兼容,或者目标类型取值范围小于源类型时,自动类型转换无法进行,这时就需要进行强制类型转换。转换格式为目标类型 变量 = (目标类型) 值
。例如:
public class Example01 {
public static void main(String[] args) {
int num = 4;
byte b = (byte) num;
System.out.println(b);
}
}
2.变量的作用域
变量需要在它的作用范围内才可以被使用,这个范围被称为变量的作用域。在程序中,变量一定会被定义在某一对大括号中,该大括号所包含的代码区域便是这个变量的作用域。