дженерики Java;принудительный тип объекта параметра для возвращаемого объекта - PullRequest
0 голосов
/ 24 октября 2018
public class Main<T> {
    public static void main(String[] args) {
        Wrapper<Double> wrapper = new Wrapper<>(0.0d);
        method(wrapper);
    }

    public static Wrapper<?> method(Wrapper<?> wrapper) {
        Wrapper<?> wrapper2 = new Wrapper<>(1);
        return wrapper2;
    }
}

public class Wrapper<T extends Number> {
    private final T member;

    public Wrapper(T member) {
        this.member = member;
    }
}

Wrapper wrapper имеет тип Double.Затем он передается в method(), который сначала создает wrapper2 с типом Integer и возвращает его.

Есть ли способ заставить wrapper2 иметь тот же тип, что и параметр Wrapperwrapper, то есть wrapper2 должен иметь тип Double?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...