java.lang.Integer cannot be cast to java.lang.String

xiaoxiao2021-02-28  84

编写简易图书管理系统时:出现如此错误 错误原因是类型转换! 说Integer 类型不能转成String类型。 (原因是主键stuId是int类型,java自动封装为Integer)

解决方法: 1.采用Object.toString() toString方法是Java.lang.Object对象的一个public方法。在java中任何对象都会继承Object对象,所以一般来说任何对象都可以调用toString这个方法。采用该种方法时,常派生类会覆盖Object里的toString()方法。 但是在使用该方法时要注意,必须保证Object不是null值,否则将抛出NullPointerException异常。 2.采用String.valueOf(Object) 使用Object.toString()方法时需要担心null问题。但是使用该方法无需担心null值问题。因为在使用String.valueOf(Object)时,它会判断Object是否为空值,如果是,则返回null。 下面为String.valueOf(Object)的源码:

public static String valueOf(Object obj) { return (obj == null) ? “null” : obj.toString(); } 注意:当object为null时,String.valueOf(object)的值是字符串对象:”null”,而不是null!!! 3.附:介绍(String )Object 该方法是一个标准的类型转换的方法,可以将Object转换为String。但是在使用该方法是要注意的是需要转换的类型必须是能够转换为String的,否则会出现CalssCastException异常错误。

转载请注明原文地址: https://www.6miu.com/read-61822.html

最新回复(0)