Быстрый вопрос: гарантировано ли, что этот код всегда печатает true
?Равенство в штучной упаковке boolean
Boolean b1 = true;
Boolean b2 = true;
System.out.println(b1 == b2);
бокса логических значений, кажется, приводит к тому же булеву объекту все время, но я не мог найти слишком много информации о коробочном булевом равенстве в JLS. Напротив, даже кажется, что предполагается, что бокс должен создавать новые объекты и может даже приводить к исключениям OOM.
Что вы думаете?
'new Boolean (true)' не будет равным другим буферам в боксе. –