Структура данных для хранения парных значений

58
8

Это то, что я пытаюсь сделать:

Наличие списка имен каналов, в которых каждое имя канала имеет несколько членов. Оба являются строками.

То, что я делаю сейчас, имеет 2d ArrayList. Первое значение для каждого ArrayList - это имя канала, а затем его члены. Есть ли лучший способ сделать это (без создания классов)?

Может ли карта иметь много значений для одного ключа? Итак, у меня есть канал как Ключ и члены как Значения к этому ключу?

Благодаря !

спросил(а) 2011-12-20T23:48:00+04:00 8 лет, 9 месяцев назад
1
Решение
80

Да, Map Java может иметь любые типы ключей или значений.

Что вы, вероятно, хотите здесь, это Map<String, Set<String>> (так как я предполагаю, что канал не может иметь один и тот же элемент дважды, верно?).

И любое действительно означает любое: вы можете даже иметь Map как ключи к Map.

ответил(а) 2011-12-20T23:50:00+04:00 8 лет, 9 месяцев назад
81

Guava Multimap может быть вам полезен.

ответил(а) 2011-12-20T23:56:00+04:00 8 лет, 9 месяцев назад
69

Вы можете иметь Map<String,ArrayList>

ответил(а) 2011-12-20T23:51:00+04:00 8 лет, 9 месяцев назад
40

Я предлагаю Map<String, List<T>> где T - тип элемента канала.

ответил(а) 2011-12-21T00:12:00+04:00 8 лет, 9 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема