Package com.tangosol.util
Class Tree
java.lang.Object
com.tangosol.util.Base
com.tangosol.util.Tree
- All Implemented Interfaces:
Serializable
,Cloneable
A thread-safe balanced binary search tree.
As of Coherence 3.3 this class is a wrapper around TreeMap
.
Note: Where practical, use java.util.TreeMap
; including
external syncronization as necessary.
- Author:
- cp 1997.09.05; mf 2007.10.16
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.tangosol.util.Base
Base.LoggingWriter
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
add
(Comparable key) Add the passed key to the tree.boolean
Adds all of the nodes in the specified Tree to this Tree if they are not already present.void
clear()
Remove all nodes from the tree.clone()
Make a shallow copy of the tree and its nodes.boolean
contains
(Comparable key) Determine if the passed key is in the tree.elements()
Create an enumerator for the tree's values.boolean
Test for tree equality.get
(Comparable key) Find the specified key and return its value.int
getSize()
Determine the size of the tree.protected Enumeration
Get an enumerator of the nodes in the tree.protected Enumeration
Get an enumerator of the nodes in the tree.boolean
isEmpty()
Test for empty tree.keys()
Create an in-order enumerator for the tree's keys.void
print()
In-order printing of the contents of the tree.void
put
(Comparable key, Object value) Add the passed key to the tree and associate the passed value with the key.void
Puts all of the nodes in the specified Tree to this Tree (including the ones that are already present).remove
(Comparable key) Remove the specified key from the tree, returning its associated value.boolean
Removes from this Tree all of its nodes that are contained in the specified Tree.boolean
Retains only the nodes in this Tree that are contained in the specified Tree.toString()
Provide a string representation of the tree.Methods inherited from class com.tangosol.util.Base
azzert, azzert, azzert, azzertFailed, breakLines, breakLines, capitalize, checkNotEmpty, checkNotNull, checkRange, computeSafeWaitTime, decimalValue, dup, dup, ensureBigDecimal, ensureClassLoader, ensureRuntimeException, ensureRuntimeException, equals, equalsDeep, err, err, err, err, err, escape, formatDateTime, getCallerStackFrame, getCommonMonitor, getCommonMonitor, getCommonMonitor, getContextClassLoader, getContextClassLoader, getDeepMessage, getErr, getLastSafeTimeMillis, getLog, getMaxDecDigits, getMaxHexDigits, getOriginalException, getOut, getProcessRandom, getRandom, getRandomBinary, getRandomBinary, getRandomString, getSafeTimeMillis, getStackFrame, getStackFrames, getStackTrace, getStackTrace, getStackTrace, getThreadFactory, getTimeZone, getUpTimeMillis, hashCode, hexValue, indentString, indentString, isDecimal, isHex, isLogEcho, isOctal, log, log, log, log, log, makeInteger, makeLong, makeThread, mergeArray, mergeBooleanArray, mergeByteArray, mergeCharArray, mergeDoubleArray, mergeFloatArray, mergeIntArray, mergeLongArray, mod, mod, octalValue, out, out, out, out, out, pad, parseBandwidth, parseBandwidth, parseDelimitedString, parseHex, parseHex, parseMemorySize, parseMemorySize, parsePercentage, parseTime, parseTime, parseTimeNanos, parseTimeNanos, printStackTrace, randomize, randomize, randomize, randomize, read, read, read, read, read, read, read, replace, setErr, setLog, setLogEcho, setOut, sleep, toBandwidthString, toBandwidthString, toCharEscape, toCrc, toCrc, toCrc, toCrc, toCrc, toDecString, toDelimitedString, toDelimitedString, toDelimitedString, toDelimitedString, toHex, toHex, toHexDump, toHexEscape, toHexEscape, toHexEscape, toHexEscape, toHexString, toMemorySizeString, toMemorySizeString, toQuotedCharEscape, toQuotedStringEscape, toSqlString, toString, toString, toStringEscape, toUnicodeEscape, trace, trace, trace, trace, trace, trace, trace, trace, trace, truncateString, truncateString, wait
-
Field Details
-
m_tree
The delgate tree.
-
-
Constructor Details
-
Tree
public Tree()Default constructor.
-
-
Method Details
-
add
Add the passed key to the tree.- Parameters:
key
- the key to add to the tree
-
put
Add the passed key to the tree and associate the passed value with the key. If the key is already in the tree, the passed value will replace the current value stored with the key.- Parameters:
key
- the key to add to the treevalue
- the object to associate with the key
-
get
Find the specified key and return its value.- Parameters:
key
- the key to look for in the tree- Returns:
- the associated value or null if the key is not in the tree
-
contains
Determine if the passed key is in the tree.- Parameters:
key
- the key to look for in the tree- Returns:
- true if the key is in the tree, false otherwise
-
remove
Remove the specified key from the tree, returning its associated value.- Parameters:
key
- the key to look for in the tree- Returns:
- the associated value (which can be null) or null if the key is not in the tree
-
clear
public void clear()Remove all nodes from the tree. -
getSize
public int getSize()Determine the size of the tree.- Returns:
- the number of nodes in the tree
-
isEmpty
public boolean isEmpty()Test for empty tree.- Returns:
- true if tree has no nodes
-
keys
Create an in-order enumerator for the tree's keys.- Returns:
- an enumerator of the tree's keys
-
elements
Create an enumerator for the tree's values.- Returns:
- an enumerator of the tree's values (in the same order that the keys were returned)
-
addAll
Adds all of the nodes in the specified Tree to this Tree if they are not already present. This operation effectively modifies this Tree so that its value is the union of the two Trees. The behavior of this operation is unspecified if the specified Tree is modified while the operation is in progress.- Returns:
- true if this Tree changed as a result of the call.
- See Also:
-
putAll
Puts all of the nodes in the specified Tree to this Tree (including the ones that are already present). This operation effectively modifies this Tree so that its value is the union of the two Trees. The behavior of this operation is unspecified if the specified Tree is modified while the operation is in progress. -
retainAll
Retains only the nodes in this Tree that are contained in the specified Tree. In other words, removes from this Tree all of its nodes that are not contained in the specified Tree. This operation effectively modifies this Tree so that its value is the intersection of the two Trees.- Returns:
- true if this Collection changed as a result of the call.
- See Also:
-
removeAll
Removes from this Tree all of its nodes that are contained in the specified Tree. This operation effectively modifies this Tree so that its value is the asymmetric set difference of the two Trees.- Returns:
- true if this Tree changed as a result of the call.
- See Also:
-
toString
Provide a string representation of the tree. -
equals
Test for tree equality. -
clone
Make a shallow copy of the tree and its nodes. Note that cloning does make new copies of each node. -
print
public void print()In-order printing of the contents of the tree. -
getUnsynchronizedKeyEnumerator
Get an enumerator of the nodes in the tree. This enumerator is not in any way thread-safe, so the tree should be synchronized for as long as this enumerator is in use. Note: Purposefully package private; used by StringTable -
getUnsynchronizedKeyEnumerator
Get an enumerator of the nodes in the tree. This enumerator is not in any way thread-safe, so the tree should be synchronized for as long as this enumerator is in use. Note: Purposefully package private; used by StringTable
-