private Set<String> extractOfferKeysForAbstractOffers(List<AbstractOfferDto> selectedOffers) {
Set<String> offerKeys = new HashSet<String>();
for (AbstractOfferDto offer : selectedOffers) {
offerKeys.add(offer.getOfferKey());
}
return offerKeys;
}
private Set<String> extractOfferKeysForOffers(List<OfferDto> selectedOffers) {
Set<String> offerKeys = new HashSet<String>();
for (OfferDto offer : selectedOffers) {
offerKeys.add(offer.getOfferKey());
}
return offerKeys;
}
而不是使用幾乎相同的方法只是輸入是不同的我想使用泛型。我是這樣創建的。如何使用不同輸入的相同方法的泛型
private <T> Set<String> extractOfferKeysForOffers(List<T> offers) {
Set<String> offerKeys = new HashSet<String>();
for (T offer : offers) {
offerKeys.add(offer.getOfferKey());
}
return offerKeys;
}
但問題是offer.getOfferKey()
不被識別。只有報價選項是AbstractOfferDto
或OfferDto
。
如何在此示例中使用泛型?
使用'T延伸CommonInterface' – Shivam