我有許多豆我想轉換爲DTO泛型方法,泛型類型不明
在每類中,我這樣做
private List<AddressDto> convertsToDto(List<Address> addresses) {
List<AddressDto> addressesDto = new ArrayList<>();
addresses.stream().map((address) -> convertToDto(address)).forEachOrdered((addressDto) -> {
addressesDto.add(addressDto);
});
return addressesDto;
}
convertToDto將是每一個類....但對於convertsToDto我要在TA抽象類,每一個類擴展的意願,並把通用convertsToDto方法與泛型類型
public abstract class BaseService {
public List<T> convertsToDto(List<R> beans) {
List<T> listDto = new ArrayList<>();
beans.stream().map((bean) -> convertToDto(bean)).forEachOrdered((dto) -> {
listDto.add(dto);
});
return listDto;
}
}
我總是T
和R
是未知的...似乎錯過了一些東西。
也許加T和R如式參數的函數?又名「公共列表 conversToDto(列表豆)」 –
Wietlol
泛型在編譯時被擦除。在運行時它總是一個對象列表。您應該將該類型作爲參數傳遞。 – PeterMmm
爲什麼需要使用泛型?爲什麼你不只是使用你的基本抽象類? – fujy