Мне нужно «Контейнер» для нескольких объектов. Определение:Java - объект TreeMap как ключ или значение?
class DataSet implements Comparable {
public int id;
public String Date;
public double Value
public DataSetFSA (int id, String Date) {
this.id=id;
this.Date=Date;
}
@Override
public int compareTo(Object o) {
return 1;
}
}
Объекты имеют определенный порядок, который не должен быть уничтожен! Как вы видите, мой контейнерный класс уже имеет «id»!
Так что теперь мой вопрос: я должен вставить объект в качестве ключа или значения в TreeMap?
DataSet ds1 = new DataSetFSA(1,"Val1");
DataSet ds2 = new DataSetFSA(2,"Val2");
...
TreeMap DataTreeMap = new TreeMap();
DataTreeMap.put(1,ds1); //as value
DataTreeMap.put(2,ds2);
//or as key (then the class has to implement comparable)
DataTreeMap.put(ds1,1); //as key but then the value doesnt has a function anymore
DataTreeMap.put(ds2,2);
Почему вы используете 'TreeMap' вообще? Что вы собираетесь с этим делать? –
Почему ваш метод compareTo всегда возвращает 1? Вы хотите сохранить порядок вставки? – CKing
Ну, я не понимаю, о чем вы говорите: «как ключ, но тогда значение больше не имеет функции». Кроме того, ваша реализация метода 'compareTo' 'бит' недействительна;) –