자바의 String을 처음 경험 햇을 경우 항상 겪는 일들이 있다.
String a = "abc";
String b = "abc";
System.out.println(a == b);
해당 결과는 어느 당연히 true... 가 아니다.
왜냐하면 String은 참조형이라 주소값을 비교하기 떄문이다.
따라서 equals라는 메서드를 사용해서 비교해야 한다.
그러면 Integer와 int의 차이는 멀까?
이는
Integer a = null;
int b = null; // 에러가 나옴
널이 될 지 안될지의 차이이다.
Integer와 같은 클래스는 래퍼 클래스로, primitive에 비해 성능은 조금 느리지만, 널이 될 수 있다.
이는 웹이나 기타 프로그래밍을 할 경우 입력값이 없는, null 인 경우가 많은데 이 경우에 래퍼 타입을 쓰면 된다.