Module xyz.cofe.ecolls
Package xyz.cofe.collection
Class Bijection<X extends java.lang.Comparable,Y extends java.lang.Comparable>
java.lang.Object
xyz.cofe.collection.Bijection<X,Y>
- Type Parameters:
X- Тип значений xY- Тип значений y
public class Bijection<X extends java.lang.Comparable,Y extends java.lang.Comparable>
extends java.lang.Object
Карта биективного отображения.
Каждый элемент x из X сопоставляется только один элемент y из Y,
и соответсвенно есть обратное отображение:
Каждый элемент x из X сопоставляется только один элемент y из Y.
| X множество | ← → | Y множество |
| x1 | ← → | ya |
| x2 | ← → | yb |
| x3 | ← → | yc |
| x4 | ← → | yd |
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classBijection.ResolveDuplicateМетод разрешения дупликатовstatic classBijection.ResolveNullМетод разрешения null ссылокclassBijection.UpdateОбновление ассоциаций -
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description voidassign(Bijection<X,Y> sample)Копирование данных согласно указанной картеvoidclear()Удаление всех значенийBijection<X,Y>clone()Клонирование картыvoideachXY(java.util.function.BiConsumer<X,Y> reciver)Обход всех пар x,yjava.util.Set<Pair<X,Y>>getEntries()Возвращает копию пар x,yXgetXbyY(Y y)Получение асоциации по значениюXgetXMax()Получение максимального значения xXgetXMin()Получение минимального значения xjava.util.NavigableSet<X>getXSet()Получение значений xYgetYbyX(X x)Получение асоциации по значениюYgetYMax()Получение максимаьлного значения yYgetYMin()Получение минимального значения yjava.util.NavigableSet<Y>getYSet()Получение значений ybooleanhasX(X x)Проверка наличия ассоциацииbooleanhasY(Y y)Проверка наличия ассоциацииjava.util.LinkedHashSet<Pair<X,Y>>removeX(java.lang.Iterable<X> itr)Удаление ассоциацииjava.util.LinkedHashSet<Pair<X,Y>>removeX(X x)Удаление ассоциацииjava.util.LinkedHashSet<Pair<X,Y>>removeY(java.lang.Iterable<Y> itr)Удаление ассоциацииjava.util.LinkedHashSet<Pair<X,Y>>removeY(Y y)Удаление ассоциацииjava.util.LinkedHashSet<Pair<X,Y>>setXY(java.lang.Iterable<Pair<X,Y>> itr)Установка значений пар x,yjava.util.LinkedHashSet<Pair<X,Y>>setXY(X x, Y y)Установка значения пары x,yjava.util.LinkedHashSet<Pair<X,Y>>setXYMap(java.util.Map<X,Y> itr)Установка значений пар x,yjava.util.LinkedHashSet<Pair<X,Y>>setXYMapEntries(java.lang.Iterable<java.util.Map.Entry<X,Y>> itr)Установка значений пар x,yintsize()Кол-во значений в картеBijection.Updateupdate()Обновление ассоциацийBijection.Updateupdate(java.util.function.BiFunction<X,Y,Pair<X,Y>> fn)Обновление ассоциаций.Bijection.Updateupdate(java.util.function.BiFunction<X,Y,Pair<X,Y>> fn, boolean strong)Обновление ассоциацийYx(X x)Получение асоциации по значениюXy(Y y)Получение асоциации по значению
-
Field Details
-
Constructor Details
-
Method Details
-
getEntries
Возвращает копию пар x,y- Returns:
- пары x,y
-
eachXY
Обход всех пар x,y- Parameters:
reciver- потребитель
-
setXY
Установка значения пары x,y- Parameters:
x- значениеy- значение- Returns:
- Старые значения
-
setXY
Установка значений пар x,y- Parameters:
itr- пары x,y- Returns:
- замененные значения
-
setXYMapEntries
public java.util.LinkedHashSet<Pair<X,Y>> setXYMapEntries(java.lang.Iterable<java.util.Map.Entry<X,Y>> itr)Установка значений пар x,y- Parameters:
itr- пары x,y- Returns:
- замененные значения
-
setXYMap
Установка значений пар x,y- Parameters:
itr- пары x,y- Returns:
- замененные значения
-
removeX
Удаление ассоциации- Parameters:
x- значение- Returns:
- удаленная пара
-
removeX
Удаление ассоциации- Parameters:
itr- значения- Returns:
- удаленная пара
-
removeY
Удаление ассоциации- Parameters:
y- значения- Returns:
- удаленная пара
-
removeY
Удаление ассоциации- Parameters:
itr- значения- Returns:
- удаленная пара
-
size
public int size()Кол-во значений в карте- Returns:
- кол-во
-
clear
public void clear()Удаление всех значений -
hasX
Проверка наличия ассоциации- Parameters:
x- значение- Returns:
- true - есть парное значение
-
hasY
Проверка наличия ассоциации- Parameters:
y- значение- Returns:
- true - есть парное значение
-
getXSet
Получение значений x- Returns:
- значения
-
getYSet
Получение значений y- Returns:
- значения
-
getXMin
Получение минимального значения x- Returns:
- минимальное значение
-
getXMax
Получение максимального значения x- Returns:
- максимальное значение
-
getYMin
Получение минимального значения y- Returns:
- минимальное значение
-
getYMax
Получение максимаьлного значения y- Returns:
- максимальное значение
-
getYbyX
Получение асоциации по значению- Parameters:
x- значение- Returns:
- ассоциированное значение
-
x
Получение асоциации по значению- Parameters:
x- значение- Returns:
- ассоциированное значение
-
getXbyY
Получение асоциации по значению- Parameters:
y- значение- Returns:
- ассоциированное значение
-
y
Получение асоциации по значению- Parameters:
y- значение- Returns:
- ассоциированное значение
-
update
Обновление ассоциаций- Returns:
- обновление
-
update
Обновление ассоциаций- Parameters:
fn- функция ассоциацииstrong- метод проверки ошибок true -Bijection.Update.strong()/ false -Bijection.Update.simple()- Returns:
- обновление
-
update
Обновление ассоциаций. Метод проверки ошибокBijection.Update.strong()- Parameters:
fn- функция ассоциации- Returns:
- обновление
-
assign
Копирование данных согласно указанной карте- Parameters:
sample- образец для копирования
-
clone
Клонирование карты- Overrides:
clonein classjava.lang.Object- Returns:
- клон
-