자바 객체들을 == 으로 비교할 경우, 객체의 값을 비교하는게 아닌, 같은 객체인지 비교한다는 것은 책에 아주 잘 나와있다.
이런 이유로 String을 비교할 때, ==이 아닌, .equal() 메소드를 사용하는 것이다.
마찬가지로, Integer 역시 값을 할당할 때 int와 같은 방법으로 할당하는 경우가 대부분이라, Integer를 그냥 ==으로 비교하는 경우가 있는데, 당연히 객체라 == 으로 비교하면 안된다.
단, Integer와 int를 ==으로 비교하면, 값이 같은지를 보게된다.
Integer끼리 값을 비교하려면 Integer.intValue() 로 int화 시켜야 한다.
'Java > 까먹기 쉬운 중요한 사실들' 카테고리의 다른 글
| Enum vs static final (0) | 2022.01.17 |
|---|---|
| String literal vs new (0) | 2020.04.27 |