java.lang.Object
xyz.cofe.collection.TreeListImpl
public class TreeListImpl
extends java.lang.Object
Реализация Tree с использованием List
-
Constructor Summary
Constructors Constructor Description TreeListImpl() -
Method Summary
Modifier and Type Method Description static <A> voidappend(java.util.List<A> nodeList, java.lang.Iterable<A> values, TripleConsumer<java.lang.Integer,A,A> changes)Добавление дочернего узла в конец спискаstatic <A> voidclear(java.util.List<A> nodeList, TripleConsumer<java.lang.Integer,A,A> changes)Удаление всех дочерних узловstatic <A> voiddeleteByIndex(java.util.List<A> nodeList, java.lang.Iterable<java.lang.Integer> index, TripleConsumer<java.lang.Integer,A,A> changes)Удаление дочернего узла(ов)static <A> voiddeleteByValue(java.util.List<A> nodeList, java.lang.Iterable<A> value, TripleConsumer<java.lang.Integer,A,A> changes)Удаление дочернего узла(ов)static <A> voidinsert(java.util.List<A> nodeList, int index, java.lang.Iterable<A> values, TripleConsumer<java.lang.Integer,A,A> changes)Добавление дочернего узла в указанную позицию списка дочерних уловstatic <A> Anode(java.util.List<? extends A> nodeList, int index)Возвращает n-ый дочерний узелstatic intnodesCount(java.util.Collection<? extends java.lang.Object> nodeList)Возвращает кол-во узлов в спискеstatic <A> voidset(java.util.List<A> nodeList, int index, java.lang.Iterable<A> values, TripleConsumer<java.lang.Integer,A,A> changes)Замена дочернего узла
-
Constructor Details
-
TreeListImpl
public TreeListImpl()
-
-
Method Details
-
nodesCount
public static int nodesCount(java.util.Collection<? extends java.lang.Object> nodeList)Возвращает кол-во узлов в списке- Parameters:
nodeList- список узлов- Returns:
- кол-во узлов в списке
-
node
public static <A> A node(java.util.List<? extends A> nodeList, int index)Возвращает n-ый дочерний узел- Type Parameters:
A- тип узла- Parameters:
nodeList- список узловindex- индекс- Returns:
- дочерний узел
-
set
public static <A> void set(java.util.List<A> nodeList, int index, java.lang.Iterable<A> values, TripleConsumer<java.lang.Integer,A,A> changes)Замена дочернего узла- Type Parameters:
A- Тип узла- Parameters:
nodeList- список узловindex- идекс узлов которые необходимо заменитьvalues- дочерние узлыchanges- (Возможно null) Список изменений (index, oldChildNode, newChildNode)
-
insert
public static <A> void insert(java.util.List<A> nodeList, int index, java.lang.Iterable<A> values, TripleConsumer<java.lang.Integer,A,A> changes)Добавление дочернего узла в указанную позицию списка дочерних улов- Type Parameters:
A- Тип узла- Parameters:
nodeList- список узловindex- индекс (0..) позиции вставкиvalues- добавляемые дочерние узлыchanges- (Возможно null) Список изменений (index, oldChildNode=null, newChildNode)
-
append
public static <A> void append(java.util.List<A> nodeList, java.lang.Iterable<A> values, TripleConsumer<java.lang.Integer,A,A> changes)Добавление дочернего узла в конец списка- Type Parameters:
A- Тип узла- Parameters:
nodeList- список узловvalues- добавляемые дочерние узлыchanges- (Возможно null) Список изменений (index, oldChildNode=null, newChildNode)
-
deleteByIndex
public static <A> void deleteByIndex(java.util.List<A> nodeList, java.lang.Iterable<java.lang.Integer> index, TripleConsumer<java.lang.Integer,A,A> changes)Удаление дочернего узла(ов)- Type Parameters:
A- Тип узла- Parameters:
nodeList- список узловindex- иднекс дочернего элемента(ов)changes- (Возможно null) Список изменений (index, oldChildNode, newChildNode=null)
-
deleteByValue
public static <A> void deleteByValue(java.util.List<A> nodeList, java.lang.Iterable<A> value, TripleConsumer<java.lang.Integer,A,A> changes)Удаление дочернего узла(ов)- Type Parameters:
A- Тип узла- Parameters:
nodeList- список узловvalue- дочерние удаляемые элементыchanges- (Возможно null) Список изменений (index, oldChildNode, newChildNode=null)
-
clear
public static <A> void clear(java.util.List<A> nodeList, TripleConsumer<java.lang.Integer,A,A> changes)Удаление всех дочерних узлов- Type Parameters:
A- Тип узла- Parameters:
nodeList- список узловchanges- (Возможно null) Список изменений (index, oldChildNode, newChildNode=null)
-