Я пишу программу на Java, использующую интерфейс TreeMap, и у меня возникла проблема с containsKey. Он возвращает истину, даже когда я даю в поле «Ключ к чему-то», которого я точно не знаю, в TreeMap.
Что может быть причиной этого?
Заранее большое спасибо.
-
Редактировать: я пишу программу, которая считает слова в текстовом файле. Слова анализируются, и каждое из них является новым экземпляром класса. В этих классах методы equals и hashCode переопределяются, поскольку слова должны рассматриваться как равные, даже если они являются разными объектами.
Поле «текст» Строка, которая содержит текст слова.
public boolean equals(Object obj){
Word temp = ((Word)obj);
return this.text.equals(temp.text);
}
public int hashCode(){
return this.text.hashCode();
}
public int compareTo (Object x) {
Word temp = ((Word)x);
if(this.text.compareTo(temp.text) < 0){
return -1;
}
else if (this.text.equals(temp.text)){
return 0;
}
else {
return 1;
}
}