Android(Java):泛型与反射
16lz
2021-01-23
private <T> T getFromList(List list,int id){
try {
if(null==list||list.isEmpty()){
return null;
}
T t = null;
Method method;
Integer tid;
for (T temp : (List<T>)list) {
method = temp.getClass().getMethod("getUid", null);
tid = (Integer) method.invoke(temp, null);
if(tid==id){
t = temp;
break;
}
}
return t;
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
try {
if(null==list||list.isEmpty()){
return null;
}
T t = null;
Method method;
Integer tid;
for (T temp : (List<T>)list) {
method = temp.getClass().getMethod("getUid", null);
tid = (Integer) method.invoke(temp, null);
if(tid==id){
t = temp;
break;
}
}
return t;
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
更多相关文章
- 代码中设置drawableleft
- android 3.0 隐藏 系统标题栏
- Android开发中activity切换动画的实现
- Android(安卓)学习 笔记_05. 文件下载
- Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
- 技术博客汇总
- android 2.3 wifi (一)
- AndRoid Notification的清空和修改
- Android中的Chronometer