Class TreeBidiMap.Node
- java.lang.Object
-
- org.apache.commons.collections.bidimap.TreeBidiMap.Node
-
- All Implemented Interfaces:
java.util.Map.Entry
,KeyValue
- Enclosing class:
- TreeBidiMap
static class TreeBidiMap.Node extends java.lang.Object implements java.util.Map.Entry, KeyValue
A node used to store the data.
-
-
Field Summary
Fields Modifier and Type Field Description private boolean[]
blackColor
private boolean
calculatedHashCode
private java.lang.Comparable[]
data
private int
hashcodeValue
private TreeBidiMap.Node[]
leftNode
private TreeBidiMap.Node[]
parentNode
private TreeBidiMap.Node[]
rightNode
-
Constructor Summary
Constructors Constructor Description Node(java.lang.Comparable key, java.lang.Comparable value)
Make a new cell with given key and value, and with null links, and black (true) colors.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
copyColor(TreeBidiMap.Node node, int index)
Make this node the same color as anotherboolean
equals(java.lang.Object obj)
Compares the specified object with this entry for equality.private java.lang.Comparable
getData(int index)
Get the specified data.java.lang.Object
getKey()
Gets the key.private TreeBidiMap.Node
getLeft(int index)
Get the left node.private TreeBidiMap.Node
getParent(int index)
Get the parent node.private TreeBidiMap.Node
getRight(int index)
Get the right node.java.lang.Object
getValue()
Gets the value.int
hashCode()
private boolean
isBlack(int index)
Is this node black?private boolean
isRed(int index)
Is this node red?private void
setBlack(int index)
Make this node black.private void
setLeft(TreeBidiMap.Node node, int index)
Set this node's left node.private void
setParent(TreeBidiMap.Node node, int index)
Set this node's parent node.private void
setRed(int index)
Make this node red.private void
setRight(TreeBidiMap.Node node, int index)
Set this node's right node.java.lang.Object
setValue(java.lang.Object ignored)
Optional operation that is not permitted in this implementationprivate void
swapColors(TreeBidiMap.Node node, int index)
Exchange colors with another node.
-
-
-
Field Detail
-
data
private java.lang.Comparable[] data
-
leftNode
private TreeBidiMap.Node[] leftNode
-
rightNode
private TreeBidiMap.Node[] rightNode
-
parentNode
private TreeBidiMap.Node[] parentNode
-
blackColor
private boolean[] blackColor
-
hashcodeValue
private int hashcodeValue
-
calculatedHashCode
private boolean calculatedHashCode
-
-
Method Detail
-
getData
private java.lang.Comparable getData(int index)
Get the specified data.- Parameters:
index
- the KEY or VALUE int- Returns:
- the key or value
-
setLeft
private void setLeft(TreeBidiMap.Node node, int index)
Set this node's left node.- Parameters:
node
- the new left nodeindex
- the KEY or VALUE int
-
getLeft
private TreeBidiMap.Node getLeft(int index)
Get the left node.- Parameters:
index
- the KEY or VALUE int- Returns:
- the left node, may be null
-
setRight
private void setRight(TreeBidiMap.Node node, int index)
Set this node's right node.- Parameters:
node
- the new right nodeindex
- the KEY or VALUE int
-
getRight
private TreeBidiMap.Node getRight(int index)
Get the right node.- Parameters:
index
- the KEY or VALUE int- Returns:
- the right node, may be null
-
setParent
private void setParent(TreeBidiMap.Node node, int index)
Set this node's parent node.- Parameters:
node
- the new parent nodeindex
- the KEY or VALUE int
-
getParent
private TreeBidiMap.Node getParent(int index)
Get the parent node.- Parameters:
index
- the KEY or VALUE int- Returns:
- the parent node, may be null
-
swapColors
private void swapColors(TreeBidiMap.Node node, int index)
Exchange colors with another node.- Parameters:
node
- the node to swap withindex
- the KEY or VALUE int
-
isBlack
private boolean isBlack(int index)
Is this node black?- Parameters:
index
- the KEY or VALUE int- Returns:
- true if black (which is represented as a true boolean)
-
isRed
private boolean isRed(int index)
Is this node red?- Parameters:
index
- the KEY or VALUE int- Returns:
- true if non-black
-
setBlack
private void setBlack(int index)
Make this node black.- Parameters:
index
- the KEY or VALUE int
-
setRed
private void setRed(int index)
Make this node red.- Parameters:
index
- the KEY or VALUE int
-
copyColor
private void copyColor(TreeBidiMap.Node node, int index)
Make this node the same color as another- Parameters:
node
- the node whose color we're adoptingindex
- the KEY or VALUE int
-
getKey
public java.lang.Object getKey()
Gets the key.
-
getValue
public java.lang.Object getValue()
Gets the value.
-
setValue
public java.lang.Object setValue(java.lang.Object ignored) throws java.lang.UnsupportedOperationException
Optional operation that is not permitted in this implementation- Specified by:
setValue
in interfacejava.util.Map.Entry
- Parameters:
ignored
-- Returns:
- does not return
- Throws:
java.lang.UnsupportedOperationException
- always
-
equals
public boolean equals(java.lang.Object obj)
Compares the specified object with this entry for equality. Returns true if the given object is also a map entry and the two entries represent the same mapping.- Specified by:
equals
in interfacejava.util.Map.Entry
- Overrides:
equals
in classjava.lang.Object
- Parameters:
obj
- the object to be compared for equality with this entry.- Returns:
- true if the specified object is equal to this entry.
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacejava.util.Map.Entry
- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- the hash code value for this map entry.
-
-