2016-12-01 3 views
0

Я реализовал эту модель с композитным рисунком в Java:Индексация геттер композитного образец Java

enter image description here

Я хотел бы знать, как я могу получить доступ к Створкам этих дерев с использованием индексом добытчика. Например, если у меня есть список элементов, получите второй лист.

Спасибо!

+0

Это не должно отличаться от обычного дерева. Чтобы найти элемент листа, вы должны проверить, есть ли у узла какие-либо дети. Если вы получаете детей (как «Список»), вы можете использовать 'List.get (index)' –

ответ

0

В типичном составном шаблоне вам все равно, какой второй лист и т. Д. Вы просто вызовите метод, скажем doSomething(), на составной объект. И это, в свою очередь, вызовет тот же метод для детей. Может быть любое количество типов элементов. Каждый из них будет реализовывать doSomething по-своему. Если вы должны найти 2-й листовой узел, в частности, я могу предложить вам добавить метод, например getChildren(), к элементу. Затем вы можете выполнить итерацию и использовать условие, подобное getChildren(). IsEmpty(), чтобы достичь объектов, которые вы хотите найти.