Class MutableFloat

  • All Implemented Interfaces:
    Mutable, Serializable, Comparable<MutableFloat>

    public final class MutableFloat
    extends Number
    implements Comparable<MutableFloat>, Mutable

    Note: it's copied from Apache Commons Lang developed at The Apache Software Foundation (http://www.apache.org/), or under the Apache License 2.0. The methods copied from other products/frameworks may be modified in this class.

    A mutable float wrapper.

    Note that as MutableFloat does not extend Float, it is not treated by String.format as a Float parameter.

    Since:
    2.1
    Version:
    $Id: MutableFloat.java 1669791 2015-03-28 15:22:59Z britter $
    See Also:
    Float, Serialized Form
    • Method Detail

      • of

        public static MutableFloat of​(float value)
        Parameters:
        value -
        Returns:
      • value

        public float value()
        Returns:
      • getValue

        @Deprecated
        public float getValue()
        Deprecated.
        replace by value().
        Gets the value as a Float instance.
        Returns:
      • setValue

        public void setValue​(float value)
        Sets the value.
        Parameters:
        value - the value to set
      • getAndSet

        public float getAndSet​(float value)
        Gets the and set.
        Parameters:
        value -
        Returns:
      • setAndGet

        public float setAndGet​(float value)
        Sets the and get.
        Parameters:
        value -
        Returns:
      • setIf

        public <E extends Exception> boolean setIf​(float newValue,
                                                   Throwables.FloatPredicate<E> predicate)
                                            throws E extends Exception
        Set with the specified new value and returns true if predicate returns true. Otherwise just return false without setting the value to new value.
        Type Parameters:
        E -
        Parameters:
        newValue -
        predicate - - test the current value.
        Returns:
        true, if successful
        Throws:
        E - the e
        E extends Exception
      • setIf

        public <E extends Exception> boolean setIf​(float newValue,
                                                   Throwables.FloatBiPredicate<E> predicate)
                                            throws E extends Exception
        Set with the specified new value and returns true if predicate returns true. Otherwise just return false without setting the value to new value.
        Type Parameters:
        E -
        Parameters:
        newValue -
        predicate - the first parameter is the current value, the second parameter is the new value.
        Returns:
        true, if successful
        Throws:
        E - the e
        E extends Exception
      • isNaN

        public boolean isNaN()
        Checks whether the float value is the special NaN value.
        Returns:
        true if NaN
      • isInfinite

        public boolean isInfinite()
        Checks whether the float value is infinite.
        Returns:
        true if infinite
      • increment

        public void increment()
        Increments the value.
        Since:
        Commons Lang 2.2
      • decrement

        public void decrement()
        Decrements the value.
        Since:
        Commons Lang 2.2
      • add

        public void add​(float operand)
        Adds a value to the value of this instance.
        Parameters:
        operand - the value to add, not null
        Since:
        Commons Lang 2.2
      • subtract

        public void subtract​(float operand)
        Subtracts a value from the value of this instance.
        Parameters:
        operand - the value to subtract
        Since:
        Commons Lang 2.2
      • getAndIncrement

        public final float getAndIncrement()
        Increments by one the current value.
        Returns:
      • getAndDecrement

        public final float getAndDecrement()
        Decrements by one the current value.
        Returns:
      • incrementAndGet

        public final float incrementAndGet()
        Increments by one the current value.
        Returns:
      • decrementAndGet

        public final float decrementAndGet()
        Decrements by one the current value.
        Returns:
      • getAndAdd

        public final float getAndAdd​(float delta)
        Adds the given value to the current value.
        Parameters:
        delta - the value to add
        Returns:
      • addAndGet

        public final float addAndGet​(float delta)
        Adds the given value to the current value.
        Parameters:
        delta - the value to add
        Returns:
      • intValue

        public int intValue()
        Returns the value of this MutableFloat as an int.
        Specified by:
        intValue in class Number
        Returns:
      • longValue

        public long longValue()
        Returns the value of this MutableFloat as a long.
        Specified by:
        longValue in class Number
        Returns:
      • floatValue

        public float floatValue()
        Returns the value of this MutableFloat as a float.
        Specified by:
        floatValue in class Number
        Returns:
      • doubleValue

        public double doubleValue()
        Returns the value of this MutableFloat as a double.
        Specified by:
        doubleValue in class Number
        Returns:
      • compareTo

        public int compareTo​(MutableFloat other)
        Compares this mutable to another in ascending order.
        Specified by:
        compareTo in interface Comparable<MutableFloat>
        Parameters:
        other - the other mutable to compare to, not null
        Returns:
        negative if this is less, zero if equal, positive if greater
      • equals

        public boolean equals​(Object obj)
        Compares this object against some other object. The result is true if and only if the argument is not null and is a Float object that represents a float that has the identical bit pattern to the bit pattern of the float represented by this object. For this purpose, two float values are considered to be the same if and only if the method Float.floatToIntBits(float)returns the same int value when applied to each.

        Note that in most cases, for two instances of class Float,f1 and f2, the value of f1.equals(f2) is true if and only if

           f1.floatValue() == f2.floatValue()
         

        also has the value true. However, there are two exceptions:

        • If f1 and f2 both represent Float.NaN, then the equals method returns true, even though Float.NaN==Float.NaN has the value false.
        • If f1 represents +0.0f while f2 represents -0.0f, or vice versa, the equal test has the value false, even though 0.0f==-0.0f has the value true.
        This definition allows hashtables to operate properly.
        Overrides:
        equals in class Object
        Parameters:
        obj - the object to compare with, null returns false
        Returns:
        true if the objects are the same; false otherwise.
        See Also:
        Float.floatToIntBits(float)
      • hashCode

        public int hashCode()
        Returns a suitable hash code for this mutable.
        Overrides:
        hashCode in class Object
        Returns:
        a suitable hash code
      • toString

        public String toString()
        Returns the String value of this mutable.
        Overrides:
        toString in class Object
        Returns: