2010-03-23 5 views
4

나는 다음과 같은 성명을 발견 :HashMap은 일대일 서신을 제공합니까?

지도 키/볼륨 쌍을 저장하는 객체입니다. 주어진 키를 값을 찾을 수 있습니다. 키는 고유해야하며 이지만 값은 중복 될 수 있습니다.

예를 들어 키/값 쌍 (3,4)이 하나만 있습니다. 그리고 지금은 put 새 쌍 (3,5)입니다. 이전 쌍을 제거합니다. 권리? 그러나 (2,3) 대신에 put (2,4)이라면 HashMap에 새로운 키/값 쌍을 추가 할 것입니다. 권리?

+3

디버깅/테스트를 해본 적이 있습니까? –

+0

유니콘으로 개구리를 뛰지 않는 한 * 실험 *에 결코 상처를 입지 마십시오. 실험하지 마십시오. 심하게 끝날 것입니다 .. –

+0

Anthony : 또한 "정부가 나는이 방법으로 세금을 냈다 ... "는 실험보다는 변호사와의 상담을 통해 가장 잘 해결된다. IRS는 독창성에 대해 고맙게 여기는 부족함을 보여줍니다. – Jay

답변

7

예, 괄호 안의 첫 번째 숫자는 키입니다. 주소라고 생각하시면됩니다. 두 번째는 값입니다. 열쇠는 집 주소와 마찬가지로 고유하지만 값은 무엇이든 될 수 있습니다.

10

제목의 질문에 대한 답변은 "아니오"입니다. 귀하의 메시지에있는 질문에 대한 대답은 "예"입니다. 고유 키와 고유 한 값 (제목에 키 - 맵이라고도 함)이있는 양방향 맵이 필요하면 GuavaBiMap을보십시오.

2

정확합니다. 각 키에는 하나의 값만 있습니다. 하지만 여러 키가 같은 값을 가지지 못하게하는 것은 아닙니다.

HashMap을 서랍 상자처럼 생각하면 각 서랍에는 하나의 개체 만 넣을 수 있으며 각 서랍에는 키가 표시되어 있습니다. 따라서 사과를 사과 서랍에 넣은 다음 사과를 꺼내지 않으면 거기에 오렌지를 넣을 수 없습니다. 그러나 서랍 2 3과 4에 오렌지를 넣는 것을 방해하는 것은 없습니다.