我有一个方法并作为参数发送列表。该方法如下所示:
public static void setSanctionTypes(List<QueueSueDTO> items) {
for (QueueSueDTO dto : items) {
StringBuffer sb = sanctionTypeRutine(dto.getRegres().getDebtors());
String sanctionType = sb.toString();
dto.setSanctionType(sanctionType);
}
}
我需要将此方法用于不同的列表数据类型参数(例如setSanctionTypes(List<QueuePaymentDTO> items);
等)。我想作为参数发送的所有类都有方法getRegres()
,所以setSanctionTypes()
方法的内容对于我想发送给它的所有这些类都是通用的和可用的。
如果我这样做
public static void setSanctionTypes(List<?> items) {
for (Object dto : items) {
StringBuffer sb = sanctionTypeRutine(dto.getRegres().getDebtors());
String sanctionType = sb.toString();
dto.setSanctionType(sanctionType);
}
}
Object 类型的 dto 不知道 getRegres()。我可以转换为所需的类型,但它只是一种具体类型,并且不能用于其他参数......
有没有办法解决我的问题?谢谢。