Dat*_*yen 2 java casting object long-integer
我试图在Java中将Object类型转换为Long类型,我得到:
public static Long castObjectToLong(Object object) {
return ((Long)object).longValue();
Run Code Online (Sandbox Code Playgroud)
当我运行时,它会抛出ClassCastException
saw*_*mon 17
当你写的时候 return ((Long)object).longValue();导致ClassCastException,因为Object不是Long.我的意思是如果Object o = new Long(),那么你可以使用cast((Long)对象).这就是我写的例子:
public class Test {
public static void main(String args[]){
System.out.println(convertToLong(10));
}
public static Long convertToLong(Object o){
String stringToConvert = String.valueOf(o);
Long convertedLong = Long.parseLong(stringToConvert);
return convertedLong;
}
}
Run Code Online (Sandbox Code Playgroud)
我首先将Object转换为String.Then String to Long.Please看到这段代码可以使用或不使用.
你得到了,ClassCastException因为可能是你试图转换java.lang.Integer成java.lang.Long无法直接完成的。
尝试将对象转换为字符串,然后将其作为参数传递给构造函数 Long
public static Long castObjectToLong(Object object) {
return new Long(object.toString());
}
Run Code Online (Sandbox Code Playgroud)
你可以这样尝试:
public class HelloWorld{
public static Long castObjectToLong(Object object) {
return Long.parseLong(object.toString());
}
public static void main(String []args){
System.out.println("Hello World");
Object object=1234;
System.out.println(castObjectToLong(object));
}
}
Run Code Online (Sandbox Code Playgroud)