我为缓存编写了一个函数来检索特定对象。这样我就不需要投了。
@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; }
我正在这样使用
String s = inCache(String.class, title);
但是现在我的缓存中有一个字符串列表,我不能这样使用
List<String> ipList = Util.inCache(List<String>.class, title);
问题是List<String>.class。我对Java非常陌生,我该怎么写?
List<String>.class
您无法获得的类List<String>,在您的情况下,唯一的方法是:
List<String>
List<String> ipList = (List<String>)Util.inCache(List.class, title);