大家好我认为我有一个小问题,但我无法处理:(
我有两个不同对象的列表,但这些对象有一个相同的方法。 我希望将List传递给方法并执行Object方法:
List<Job> list = new ArrayList<Job>();
Job j1 = new Job();
j1.setName("ddddd");
list.add(j1);
Job j2 = new Job();
j2.setName("fffff");
list.add(j2);
List<JobItem> list2 = new ArrayList<JobItem>();
JobItem j3 = new JobItem();
j3.setName("ttttt");
list2.add(j3);
JobItem j4 = new JobItem();
j4.setName("bbbbb");
list2.add(j4);
listItems(list);
private void listItems(List<?> list) {
for (int i = 0; i < list.size(); i++) {
Job ff = (Job) list.get(i);
System.out.println(ff.getName());
}
}
此示例有效,但如何传递list2 List
感谢您的帮助。
答案 0 :(得分:3)
创建一个包含所需方法的公共基类或接口。
然后,将方法更改为List<? extends JobBase>
。