Java에서 사전을 어떻게 작성합니까? [닫은]

실제 책에서와 같이 사전을 구현하려고합니다. 나는 단어와 그 의미의 목록이 있습니다.

Java가 단어 목록과 의미를 키 / 값 쌍으로 저장하기 위해 제공하는 데이터 구조 / 유형

키가 주어진 경우 어떻게 값을 찾아 반환 할 수 있습니까?



답변

을 원할 것 Map<String, String>입니다. Map인터페이스 를 구현하는 클래스 에는 다음이 포함되지만 이에 국한되지는 않습니다.

각각은 특정 상황에 맞게 설계 / 최적화되었습니다 (자세한 내용은 해당 문서로 이동). HashMap아마도 가장 일반적 일 것입니다. 기본 이동.

예를 들어 (a 사용 HashMap) :

Map<String, String> map = new HashMap<String, String>();
map.put("dog", "type of animal");
System.out.println(map.get("dog"));
동물의 종류

답변

텍스트 사전 (문자열)을 만듭니다.

Map<String, String> dictionary = new HashMap<String, String>();

그런 다음 그것을 다음과 같이 사용하십시오 :

dictionary.put("key", "value");
String value = dictionary.get("key");

작동하지만 생성자 클래스를 선언 클래스와 동일하게 유지 해야하는 오류가 발생합니다. 부모 클래스에서 상속 받는다는 것을 알고 있지만 불행히도 런타임에 오류가 발생합니다.

Map<String, String> dictionary = new Map<String, String>();

이것은 제대로 작동합니다.


답변

Map 인터페이스HashMap 과 같은 구현 사용


답변

추상 클래스 사전이 있습니다

http://docs.oracle.com/javase/6/docs/api/java/util/Dictionary.html

그러나 이것은 구현이 필요합니다.

Java는 Hashtable이라는 멋진 구현을 제공합니다

http://docs.oracle.com/javase/6/docs/api/java/util/Hashtable.html