![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| SamuraiD |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 11.6.2007 Репутация: нет Всего: нет |
Изучаю класс Hashtable. Попался метод класса values(), который возвращает все значения value таблицы в виде интерфейса Collection.
В API написано:
то бишь, любые изменения в полученной коллекции приводят к модификации таблицы. Пишу пример:
Результат: Three* Two* One* {3 = Three, 2 = Two, 1 = One } То есть видно, что значения в таблице не изменились... Это сообщение отредактировал(а) SamuraiD - 26.10.2007, 18:16 |
||||
|
|||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
При создании вектор копирует в себя значения из коллекции, и естественно изменения в исходной коллекции не отображаются на векторе.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| SamuraiD |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 11.6.2007 Репутация: нет Всего: нет |
В принципе, я так и думал. Потому и задал вопрос, а как передать коллекцию в вектор таким образом, чтобы все изменения в нём отражались в таблице? Хоть какой-нибудь пример кода можно? А то мне наглядно это не проверить... |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Никак. Используй исходную коллекцию, зачем тебе вектор?
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Kangaroo |
|
||||
|
AA - Aussie Animal ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2042 Регистрация: 7.10.2006 Где: US Репутация: 21 Всего: 104 |
Поставь между циклами
и увидишь
То есть, если ты прямо изменяешь ht.values() - работает, а если через Vector, то нет -------------------- Lost.... |
||||
|
|||||
| SamuraiD |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 11.6.2007 Репутация: нет Всего: нет |
Так вот это я и хочу понять - как мне использовать исходную коллекцию??? Я взял вектор, потому что он реализует интерфейс Collection. Непосредственно объект типа Collection создать же нельзя.... |
|||
|
||||
| nornad |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1079 Регистрация: 16.2.2007 Где: в Караганде Репутация: 16 Всего: 31 |
А зачем тебе его создавать? LSD предлагает тебе просто использовать ту коллекцию, которая у тебя уже есть. -------------------- Три достоинства программиста: Леность, Нетерпение и Гордость Ларри Уолл |
|||
|
||||
![]()
|
| Правила форума "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. |