Я хочу написать функцию, которая может принимать два похожих типа. Но не то же самое.Общий метод, который принимает два типа списка
MyClassA {
abc()
a2b()
}
MyClassB {
abc()
a3b()
}
Один метод в этих двух. Функция должна принимать список любого из этих двух типов, и я хочу вызывать abc() для объектов в списке.
Это не похоже, чтобы помочь:
private <T> Set<MyclassX> createObject(List<T> classes) {
Set<MyclassX> x;
if (T instanceof MyClassA) {
for (MyClassA a : classes) {
if (a.abc().equals("somethig")) {
x.add(t.abc());
}
}
}
return x;
}
Я даже не нужно проверять instanceof
. Мне просто нужно перебирать список и сравнивать значения. если есть совпадение, а затем вызвать метод abc()
Что происходит, когда вы компилируете и запускаете свой код? Вы получаете какие-либо ошибки? –
Также, пожалуйста, покажите декларацию для 't'? –
И каковы типы возвращаемых методов в ваших двух классах. –