Добавить пользовательский массив доступа индекс в класс в Java? - PullRequest
4 голосов
/ 17 апреля 2011

В Python вы можете добавить списки подписчиков для доступа к структурам данных для пользовательских классов:

class customFile:
    # other methods ...
    def __getitem__(self, x):
        return self.list[x]

чтобы получить поведение:

newFile = customFile()
newFile.list[1] = 4
newFile.list[1]
# 4
newFile[1]
# 4

Есть ли способ добавить что-то подобное в пользовательские классы в Java?

1 Ответ

4 голосов
/ 17 апреля 2011

В Java нет прямого эквивалента. Ближайшим эквивалентом будет предоставление собственной реализации типа коллекции List . Обычно вы расширяете AbstractList и предоставляете методы get(int) и size(), что дает вам полный контроль над содержимым и размером списка.

...