Class ConcurrentReaderHashMap.Entry

  • All Implemented Interfaces:
    java.util.Map.Entry
    Enclosing class:
    ConcurrentReaderHashMap

    protected static class ConcurrentReaderHashMap.Entry
    extends java.lang.Object
    implements java.util.Map.Entry
    ConcurrentReaderHashMap collision list entry.
    • 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()  
      • Methods inherited from class java.lang.Object

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

      • hash

        protected final int hash
      • key

        protected final java.lang.Object key
      • value

        protected volatile java.lang.Object value
    • Method Detail

      • 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
        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 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
        Parameters:
        value - the new value.
        Returns:
        the previous value, or null if entry has been detectably removed.
        Throws:
        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
        Overrides:
        equals in class java.lang.Object
      • hashCode

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

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