java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer 类型转换报错解决


原因:long 和 Integer 之间没有任何继承关系,都继承于Number类

测试代码:

public class test{
    public static void main(String[] args){
        
        long num_long = 2;
        Integer num_integer = 3;
        //long Integer int 转换
        int num1 = 1;
        num1 = num_integer;
        System.out.println("Integer 转 int : "+ num1);
        int num2 = 1;
        num2 = (int)num_long;
        System.out.println("long 转 int : "+ num2);
        num_integer =(Integer)((Long) num_long).intValue();
        System.out.println("long 转 Integer : "+ num_integer);
        long num_long1 = 2;
        Integer num_integer1 = 3;
        num_long1 =((long) num_integer1);
        System.out.println("Integer 转 long : "+ num_long1);
    }
}

输出结果:

Integer 转 int : 3
long 转 int : 2
long 转 Integer : 2
Integer 转 long : 3


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM