I wrote a function for my cache to retrieve a specific object. This way I don't need to cast it .
@SuppressWarnings("unchecked") public static <T> T inCache(Class<T> obj, String token) { Object cacheObj = Cache.get(token); if (cacheObj != null) { if (obj.isAssignableFrom(cacheObj.getClass())) { return (T) cacheObj; } } return null; } I am using it like this
String s = inCache(String.class, title); But now I have a list of Strings in my cache and I can't use it like this
List<String> ipList = Util.inCache(List<String>.class, title); The problem is the List<String>.class . I am very new to java, how do I have to write it?
return obj.cast(cacheObj)instead.