首页 > 编程笔记 > Java笔记 阅读:39

Java强制类型转换和自动类型转换(附带实例)

在 Java 编程语言中,数据类型转换是指将一个数据类型的值转换为另一个数据类型的值的过程。这在编程中经常需要,特别是当你需要将一个类型的数据赋值给另一种类型的变量,或者进行算术运算时。

Java 的数据类型转换有两种,即自动转换和强制转换。

Java自动类型转换

自动转换也称为隐式转换,是自动完成的。编译器可以自动将较小的数据类型转换为较大的数据类型,以便操作。

当把一种数据类型赋值给另一种数据类型时,如果两种数据类型兼容,且目标数据类型的范围大于源数据类型的范围,编译器就会自动进行转换。

自动转换的注意事项:
【实例 1】编写一个简单的 Java 程序,使用自动转换规则实现数据类型的转换,将转换之后的数据显示到控制台,代码如下:
public class ConstantVariableDemo {
    public static void main(String[] args) {
        // 定义变量
        int a=10;
        // 将 int 类型转换为 double 类型
        double d=a;
        System.out.println(d);
        // 将 int 类型转换为 float 类型
        float f=a;
        System.out.println(f);
        // 将 int 类型转换为 long 类型
        long l=a;
        System.out.println(l);
        // 如果涉及运算时,int 类型乘以 double 类型,先将数据转换为 double 类型
        double d1=a*0.3;
        System.out.println(d1);
    }
}
程序运行结果为:

10.0
10.0
10
3.0

在上述代码中,使用自动转换规则实现数据类型的转换,自动将较小的数据类型转换为较大的数据类型。

Java强制类型转换

强制转换也称为显式转换,需要手动完成,通常用于将一个数据类型强制转换为另一个数据类型。

强制转换的规则和注意事项:
【实例 2】编写一个简单的 Java 程序,使用强制转换规则实现数据类型的转换,将转换之后的数据显示到控制台,代码如下:
public class ConstantVariableDemo {
    public static void main(String[] args) {
        // 定义 double 类型
        double d1=80.3;
        // 定义 float 类型
        float f1=50.3f;
        int d2=(int)d1;
        int f2=(int)f1;
        System.out.println(d2);
        System.out.println(d1);
    }
}
程序运行结果为:

80
80.3

在上述代码中,使用强制转换规则实现数据类型的转换,当程序运行时,应该在控制台上显示转换之后的数据。

相关文章