В настоящее время я пытаюсь создать программу, которая сопрягает глаголы на испанском языке. Я создал Hash-таблицу, содержащую ключ и экземпляр объекта Verb. Ключ - это строка, которая имеет инфинитивную форму глагола (например, "hablar" ). Это код, который я до сих пор использовал для хэш-карты:
public class VerbHashMap {
HashMap<String, Verb> verbHashMap;
public VerbHashMap(){
verbHashMap = new HashMap();
}
}
Каждый ключ глагола в HashMap основан на инфинитивной форме глагола. Например, строка "hablar" является ключом к испанскому глаголу. Класс Verb имеет метод getInfinitive(), который возвращает строку, содержащую инфинитивную форму глагола.
public boolean addVerb(Verb verb){
if(verbHashMap.containsValue(verb.getInfinitive()){
return false;
}
else{
verbHashMap.put(verb.getInfinitive(), verb);
return true;
}
}
Вопрос заключается в том, что является наиболее эффективным способом создания метода, который возвращает список всех глаголов на хэш-карте в алфавитном порядке? Должен ли я вернуть метод ArrayList, который включает в себя ключи всех объектов на Hash-карте? Или есть более эффективный способ сделать это?