11652번 - 카드
첫번째 소스에서는 arraylist를 사용했고 두번째 소스에서는 array로 첫번째 소스를 바꿔보았습니다.
그런데 첫번째 소스는 틀리고, 두번째 소스는 맞았습니다.
왜 arraylist를 쓰면 틀리다고 나오는 건가요?
궁금합니다.
30번째 줄과 32번째 줄이 의도와 다르게 동작합니다.
list.get() 메소드의 반환값은 Long 이라고 하는 wrapped object 입니다.
object 에 대해서 == 연산자 또는 != 연산자를 사용하게 되면 object 내용물을 보는게 아니라 reference 가 동일한가 (즉, 같은 object 를 가리키는가) 를 판단합니다.
object 안에 들어있는 long 수치가 같은지 비교하려면 equals 메소드를 사용해야 합니다.
헐 ㅜㅜㅜ 정말 감사합니다 ㅋㅋㅋㅋㅋㅋㅋㅋ궁금증이 시원하게 풀렸어요~~!!
댓글을 작성하려면 로그인해야 합니다.
ugs1575 4년 전
첫번째 소스에서는 arraylist를 사용했고 두번째 소스에서는 array로 첫번째 소스를 바꿔보았습니다.
그런데 첫번째 소스는 틀리고, 두번째 소스는 맞았습니다.
왜 arraylist를 쓰면 틀리다고 나오는 건가요?
궁금합니다.