您可以使用[
Class.isInstance()](http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html#isInstance
(
java.lang.Object))和[
Class.cast()](http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html#cast(java.lang.Object))方法。这是一个示例实现(列表带有额外的参数):
static <T> T findInList(List<?> list, Class<T> clazz) { for (Object o : list) { if (clazz.isInstance(o)) { return clazz.cast(o); } } return null;}更新:我建议不要在中添加多个类型
Collection。这通常是需要自定义数据类型(例如
Transaction)或元组值的标志。



