profile image

L o a d i n g . . .

혼공노트를 전체적으로 읽어보고


다음주에 시작할 미션인 12주! 내용을 읽어보았다

 

 

 

 

 

 

 

p512 8번 포장객체 내부의 값 비교

public class IntegerCompareEx {
	public static void main(String[] args) {
		Integer obj1 = 100;
		Integer obj2 = 100;
		Integer obj3 = 300;
		Integer obj4 = 300;
		
		System.out.println( obj1 == obj2);
		System.out.println( obj3 == obj4);
	}
}



실행결과






이유

타입 값의 범위
boolean true, false
char \u0000 ~ \u0071
byte, short, int -128 ~ 127


박싱된 값이 다음 표에 나와있는 범위의 값이라면 ==와 != 연산자로 내부의 값을 바로 비교할 수 있으나, 그 이외의 경우에는 언박싱한 값을 얻거나 equals()메소드를 통해 비교를 해야한다.




수정

public class IntegerCompareEx {
	public static void main(String[] args) {
		Integer obj1 = 100;
		Integer obj2 = 100;
		Integer obj3 = 300;
		Integer obj4 = 300;
		
		System.out.println( obj1 == obj2);
		System.out.println( obj3.intValue() == obj4.intValue()); //언박싱
		System.out.println( obj3.equals(obj4)); //equals 메소드
	}
}

 




반응형
복사했습니다!