Reputation: 1804
I want to dynamically cast something by calling something like this:
Object genericObject = new MyObject();
MyObject myObject = getObject(genericObject, MyObject.class);
public static final T getObject(Object object, Class<T> clazz){
if(isInstance(object, clazz)){
return object;
}
return null;
}
How to fix the getObject()
method so that it works?
Upvotes: 1
Views: 155
Reputation: 311163
You can use Class#cast
:
public static final <T> T getObject(Object object, Class<T> clazz) {
if(clazz.isInstance(object)) {
return clazz.cast(object);
}
return null;
}
Upvotes: 2