Я ищу класс KeyValuePair в Java.
Поскольку java.util сильно использует интерфейсы, нет конкретной реализации, только интерфейс Map.Entry.KeyValuePair в Java
Есть ли какая-то каноническая реализация, которую я могу импортировать? Это один из тех классов программирования «сантехников», которых я ненавижу в 100 раз.
Я бы рекомендовал не использовать общий класс KeyValuePair. Гораздо лучше определить класс, специфичный для домена, с более информативными аксессуарами (например, getProductId(), getProductPrice()). – Adamski
@ Адамски: Я не согласен. Мы не используем специфичные для домена классы «Карта» или «Список», почему это должно быть иначе? KeyValuePair - это всего лишь карта с одной записью. – skaffman
@ skaffman: Справедливая точка, но я думаю, что концепция родовой пары легче открыть для злоупотребления, чем прохождение Коллекций вокруг. Например, если кто-то хочет вернуть два значения из метода, возникает соблазн вернуть пар, но обычно это указывает на проблему с базовым дизайном (например, почему X и Y никоим образом не объединены в модели домена, если они связанный с этим?) –
Adamski