2013-06-17 2 views
1

java.util.HashMap은 Object 만 키로 받아 들일 수 있으므로 원시 int를 받아 들일 수는 없으며 대신 Integer 객체 만 수락한다는 것을 알고 있습니다.HashMap <Integer, Object> get 메서드

get 메소드를 사용하여 키를 매개 변수로 사용하여 값을 검색 할 때 Integer 객체에 넣어야합니까? 아니면 원시 int 여기 충분합니까?

+0

의 Map이 필요하면 대신 Object 배열을 사용할 수 있는지 확인하십시오. –

+0

정수는 개체의 참조 번호입니다. 그래서 목록의 위치로 객체를 참조하지 않고 참조 번호로 객체를 참조합니다. 배열을 사용하고 중간에 요소를 제거한 경우 목록에서 제거 된 객체 뒤에있는 경우 해당 객체의 번호가 변경됩니다. 그러나이 객체에는 일관된 키가 있어야합니다. 또한 목록에있을 수있는 모든 항목이 항상 목록에있을 수는 없습니다. 그것은 배열을 사용하지 않는 이유에 대한 제 생각이었습니다. – DanMc

답변

6

Java 5+ 기본 int은 자동으로 Integer으로 자동 저장되므로 사용하는 것이 안전합니다. 이전에 객체를 사용해야합니다.

+0

Java 5 이상에서만 제공됩니다. –

+0

아, 그걸 깜박 했어 –

+0

자바 5 이전에 무슨 일이 있었던거야? 예외를 던지셨습니까? – noMAD

관련 문제