Изменение члена объекта в карте - PullRequest
0 голосов
/ 17 января 2011

Если я создаю класс, который имеет переменную-член с именем «testName», а затем создаю несколько объектов из этого и помещаю их все как значения в «Map». Как я могу перебрать эту Карту и изменить переменную «testName» в каждом объекте значения?

Другими словами, как я могу получить доступ и изменить элементы Объекта, когда этот объект был помещен на Карту.

Ответы [ 3 ]

2 голосов
/ 17 января 2011

Если все объекты, которые вы хотите изменить, представляют собой все значения на карте, и вы не хотите изменять сопоставления с ключа на значение, вы можете выполнить итерацию по коллекции только значений карты:

Collection< ValueType > vals = map.values();
for (ValueType val : vals) {
    val.testName = ...
}
2 голосов
/ 17 января 2011

Вам необходимо повторить для каждой записи в Карте и изменить имя. Смотрите здесь, например, о том, как перебрать карту

1 голос
/ 17 января 2011

Карта сама по себе не является итеративной, но вы можете получить набор ключей из карты с помощью метода keySet (), и, поскольку этот набор является итеративным (реализует интерфейс Iterable) Выполните итерацию набора ключей, получая каждое значение из карты с помощью метода get, и внесите необходимые изменения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...