У меня есть экземпляр ListMultimap (Guava), который состоит из вложенных HashMaps и довольно сложных объектов - есть ли способ изменить toString() для этого экземпляра, чтобы настроить вывод консоли при печати HashMap? Или это единственный способ сделать новый класс, который является расширением класса HashMap, и переписать метод ToString() следующим образом:Переопределение toString() для одного конкретного экземпляра Multimap?
class CustomizedListMultiMap extends ListMultiMap<myComplexDatatypeOne, myComplexDatatypeTwo> {
// overwriting toString
public String toString() {
// my custom implementation
}
}
Multimaps инстанцируются следующим образом:
ListMultimap<datatypeOne, datatypeTwo> map = ArrayListMultimap.create();
так Я не думаю, что первый ответ применим? (Спасибо, хотя.)
Что настройки вы пытаетесь сделать, что вы не можете сделать на 'toString' типов элементов, вместо типа коллекции? –
Хммм, значения ListMultimap являются самими списками; Я хочу уметь хватать длину этих значений. –
Ждите, уточните: у вас есть 'ListMultimap', или' ListMultimap > '? Если первое, то просто 'multimap.keys(). ToString()', вероятно, сделает то, что вам нужно. –