使用不同的对象创建列表

时间:2012-07-17 15:18:33

标签: java list

我有一个方法,它接受List<>并将列表中的所有数字加在一起,如果数字= 100则返回

我的问题是我想对许多不同类型的列表使用相同的方法

所以没有这个

public boolean checkPercent(List<BarStaff> associates){..same..}
public boolean checkPercent(List<Waiters> associates){..same..}
public boolean checkPercent(List<KitchenStaff> associates){..same..} 

我想要这个

public boolean checkPercent(List<could be any type> associates){..same..} 

有没有办法对所有不同类型的列表使用相同的代码(工作人员在其中具有相同的值,因此它们在任何方面都没有区别),而不是重复使用不同列表的相同代码? / p>

4 个答案:

答案 0 :(得分:8)

您可以使用parameterized method

public <T> boolean checkPercent(List<T> associates)
{
    // snip...
}

或只是accept any list

public boolean checkPercent(List<?> associates)
{
    // snip...
}

答案 1 :(得分:7)

您可以创建generic method

public <T> boolean checkPercent(List<T> associates) {
    ... your code ...
}

答案 2 :(得分:3)

使用泛型:

public <T> boolean checkPercent(List<T> associates){...}

答案 3 :(得分:2)

面向对象的方法是让BarStaffWaitersKitchenStaff实现具有方法Employee的{​​{1}}接口。

public int getPercentage()