Итак, вопросы требуют от меня разработки метода d, который будет принимать список и класс и возвращать его содержимое обратно.
Write a class D that passes the following test.
jshell> class E { public String toString() { return "E"; }}
jshell> class F extends E { public String toString() { return "F"; }}
jshell> List<E> p = D.add(new ArrayList<E>(), new E())
jshell> List<F> q = D.add(new LinkedList<F>(), new F())
jshell> List<E> r = D.add(D.add(new LinkedList<E>(), new E()), new F())
jshell> List<F> s = D.add(D.add(new ArrayList<F>(), new F()), new F())
jshell> /var
| List<E> p = [E]
| List<F> q = [F]
| List<E> r = [E, F]
| List<F> s = [F, F]
jshell> List<E> x = D.join(p, q) // join q to the end of p
jshell> List<E> y = D.join(p, p)
jshell> List<F> z = D.join(q, q)
jshell> /var
| List<E> p = [E]
| List<F> q = [F]
| List<E> r = [E, F]
| List<F> s = [F, F]
| List<E> x = [E, F]
| List<E> y = [E]
| List<F> z = [F]
Мой текущий код выглядит так
import java.util.List;
import java.util.ArrayList;
class D {
public static <T> List <T> add(List<? super T> s,T t) {
s.add(t);
return new ArrayList<T>(s);
}
}
Я продолжаю получать эту ошибку: не найдено подходящего конструктора для ArrayList (List)
Я должен ввести значение toString этого в ArrayList, однако s.add(t.toString());
также выдает ошибку