Class ConcurrentReaderHashMap.Entry

All Implemented Interfaces:
Enclosing class:

protected static class ConcurrentReaderHashMap.Entry
extends java.lang.Object
implements java.util.Map.Entry
ConcurrentReaderHashMap collision list entry.
  • Field Summary

    Modifier and Type Field Description
    protected int hash  
    protected java.lang.Object key  
    protected ConcurrentReaderHashMap.Entry next  
    protected java.lang.Object value  
  • Method Summary

    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()  

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • hash

      protected final int hash
    • key

      protected final java.lang.Object key
    • next

      protected final ConcurrentReaderHashMap.Entry next
    • value

      protected volatile java.lang.Object value
  • Method Details

    • getKey

      public java.lang.Object getKey()
      Specified by:
      getKey in interface java.util.Map.Entry
    • getValue

      public java.lang.Object getValue()
      Get the value. Note: In an entrySet or entrySet.iterator, unless the set or iterator is used under synchronization of the table as a whole (or you can otherwise 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 interface java.util.Map.Entry
      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 the set or iterator is used under synchronization of the table as a whole (or you can otherwise 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 multi-threaded 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 interface java.util.Map.Entry
      value - the new value.
      the previous value, or null if entry has been detectably removed.
      java.lang.NullPointerException - if the value is null.
    • equals

      public boolean equals​(java.lang.Object o)
      Specified by:
      equals in interface java.util.Map.Entry
      equals in class java.lang.Object
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface java.util.Map.Entry
      hashCode in class java.lang.Object
    • toString

      public java.lang.String toString()
      toString in class java.lang.Object