![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Жабист |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 23.9.2006 Репутация: нет Всего: нет |
Я не разбираюсь в жабских контейнерах, помогите подобрать.
Задача: Разработать контейнер состоящий из двух связанных пар строк (1 - 2). В него последовательно поступают строки, которые могут повторяться. Если такой строки нет в контейнере, то добаляется одинаковая пара таких строк (1 - 1), а если есть то добавляется оригинальная строка (1) + целое значение счётчика (2), который инкрементируется при этом. |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 47 Всего: 159 |
Пишу на ходу, так что цените идею, а не реализацию:
Создадим наш класс на основе какого-нибудь контейнера (коллекции) содержащего пары ключ/значение. К примеру HashMap. Определим у него дополнительный метод, реализющий необходимую логику (Это будет метод add(String)).:
Это сообщение отредактировал(а) powerOn - 23.9.2006, 19:17 |
|||
|
||||
| y3u |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 9.9.2006 Где: Москва Репутация: 5 Всего: 13 |
я бы все-таки, не наследовался от мапа - плохой это паттерн, да и опасный. Я бы сделал мапчег приватным филдом...
-------------------- В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 24 Всего: 151 |
Почему? Можно подробнее? -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| y3u |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 9.9.2006 Где: Москва Репутация: 5 Всего: 13 |
потому, как объекты нужно делать таким образом, чтобы нецелевое использование объекта не нарушало общей логики. Этот объект предназначен для работы со строками, а сам мэп, по сути, может хранить любые объекты, это значит, что можно забить на специальный метод для добавления строк с инкрементом счетчика, воспользовавшись просто методом put. Вот если сделать меп приватным, то в метод можно будет запихать только строку, т.е. правильное использование будет контролироваться на этапе компиляции.
-------------------- В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 24 Всего: 151 |
y3u, понял, спасибо за разьяснение.
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| Metal_Heart |
|
|||
|
а почему бы и нет? ![]() ![]() Профиль Группа: Участник Сообщений: 728 Регистрация: 31.3.2005 Где: Москва Репутация: 4 Всего: 12 |
y3u, +
-------------------- не стыдно учиться, а стыдно не учиться |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |