Можем ли мы изменить класс-оболочку на примитивные типы данных?

можем ли мы изменить оболочку на примитивную? Если нет, то что происходит в этом коде

int I = Integer.valueOf(46);
System.out.println(I);

Я не получаю никакой ошибки.


person garvendra    schedule 28.07.2017    source источник
comment
См.: docs.oracle.com/javase/tutorial/java/data/ autoboxing.html   -  person T.J. Crowder    schedule 28.07.2017
comment
Наверняка об этом уже спрашивали и отвечали.   -  person T.J. Crowder    schedule 28.07.2017
comment
@T.J.Crowder: Хотя я так подозреваю, по крайней мере, в контексте других сложностей, я не уверен, как найти дубликат среди тысяч других вопросов, касающихся распаковки. Очень приятно иметь вопрос, который просто фокусируется на этой одной детали, а не на части условного выражения и т. д.   -  person Jon Skeet    schedule 28.07.2017
comment
@JonSkeet: Нашел один, он довольно чистый. Мы можем добавить другие, если найдем их.   -  person T.J. Crowder    schedule 28.07.2017
comment
@T.J.Crowder А как насчет Как преобразовать Integer в int?   -  person Dioxin    schedule 28.07.2017
comment
@T.J.Crowder: Верно. Я лично предпочитаю это, а не это - помимо всего прочего, в этой версии Long распаковка происходит задолго до назначения; это должно произойти, чтобы операторы работали. Я бы хотел, чтобы эта версия не была удалена, даже если она останется закрытой как дубликат.   -  person Jon Skeet    schedule 28.07.2017
comment
@JonSkeet: Хороший обман может значительно улучшить поверхность поиска.   -  person T.J. Crowder    schedule 28.07.2017


Ответы (1)