Package EDU.oswego.cs.dl.util.concurrent
Class ConcurrentHashMap.Entry
- java.lang.Object
-
- EDU.oswego.cs.dl.util.concurrent.ConcurrentHashMap.Entry
-
- All Implemented Interfaces:
java.util.Map.Entry
- Enclosing class:
- ConcurrentHashMap
protected static class ConcurrentHashMap.Entry extends java.lang.Object implements java.util.Map.Entry
ConcurrentHashMap collision list entry.
-
-
Field Summary
Fields Modifier and Type Field Description protected int
hash
protected java.lang.Object
key
protected ConcurrentHashMap.Entry
next
protected java.lang.Object
value
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object o)
java.lang.Object
getKey()
java.lang.Object
getValue()
Get the value.int
hashCode()
java.lang.Object
setValue(java.lang.Object value)
Set the value of this entry.java.lang.String
toString()
-
-
-
Field Detail
-
key
protected final java.lang.Object key
-
value
protected volatile java.lang.Object value
-
hash
protected final int hash
-
next
protected final ConcurrentHashMap.Entry next
-
-
Method Detail
-
getKey
public java.lang.Object getKey()
- Specified by:
getKey
in interfacejava.util.Map.Entry
-
getValue
public java.lang.Object getValue()
Get the value. Note: In an entrySet or entrySet.iterator, unless you can guarantee lack of concurrent modification, getValue might return null, reflecting the fact that the entry has been concurrently removed. However, there are no assurances that concurrent removals will be reflected using this method.- Specified by:
getValue
in interfacejava.util.Map.Entry
- Returns:
- the current value, or null if the entry has been detectably removed.
-
setValue
public java.lang.Object setValue(java.lang.Object value)
Set the value of this entry. Note: In an entrySet or entrySet.iterator), unless you can guarantee lack of concurrent modification, setValue is not strictly guaranteed to actually replace the value field obtained via the get operation of the underlying hash table in multithreaded applications. If iterator-wide synchronization is not used, and any other concurrent put or remove operations occur, sometimes even to other entries, then this change is not guaranteed to be reflected in the hash table. (It might, or it might not. There are no assurances either way.)- Specified by:
setValue
in interfacejava.util.Map.Entry
- Parameters:
value
- the new value.- Returns:
- the previous value, or null if entry has been detectably removed.
- Throws:
java.lang.NullPointerException
- if the value isnull
.
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals
in interfacejava.util.Map.Entry
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacejava.util.Map.Entry
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-