package wrapper;
public class IntegerEqualExam {
public static void main(String[] args) {
Integer i1 = new Integer(100);
Integer i2 = new Integer(100);
Integer i3 = new Integer(200);
Integer i4 = new Integer("100");
System.out.println("i1.equals(i2) = " + i1.equals(i2));
System.out.println("i1.equals(i3) = " + i1.equals(i3));
System.out.println("i1.equals(i4) = " + i1.equals(i4));
if(i1 == i2)
System.out.println("same reference");
else
System.out.println("different reference");
System.err.println("error");
}
}
I was just practicing Integer class, I found the System.err.println method by accident.
But I had some problem to understand this situation.
Whenever I run the this program, Result is changed.
Why did it happen?