Module javafx.base
Package javafx.beans.binding

## Class IntegerExpression

- java.lang.Object
- - javafx.beans.binding.NumberExpressionBase
  - - javafx.beans.binding.IntegerExpression

- All Implemented Interfaces:
    `NumberExpression`, `Observable`, `ObservableIntegerValue`, `ObservableNumberValue`, `ObservableValue<Number>`
  Direct Known Subclasses:
    `IntegerBinding`, `ReadOnlyIntegerProperty`

      public abstract class IntegerExpression
      extends NumberExpressionBase
      implements ObservableIntegerValue

  `IntegerExpression` is an `ObservableIntegerValue` plus additional convenience methods to generate bindings in a fluent style.

  A concrete sub-class of `IntegerExpression` has to implement the method `ObservableIntegerValue.get()`, which provides the actual value of this expression.

  Since:
    JavaFX 2.0

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `IntegerExpression()` |

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `DoubleBinding` | `add​(double other)` | Creates a new `NumberBinding` that calculates the sum of this `NumberExpression` and a constant value.
    `FloatBinding` | `add​(float other)` | Creates a new `NumberBinding` that calculates the sum of this `NumberExpression` and a constant value.
    `IntegerBinding` | `add​(int other)` | Creates a new `NumberBinding` that calculates the sum of this `NumberExpression` and a constant value.
    `LongBinding` | `add​(long other)` | Creates a new `NumberBinding` that calculates the sum of this `NumberExpression` and a constant value.
    `ObjectExpression<Integer>` | `asObject()` | Creates an `ObjectExpression` that holds the value of this `IntegerExpression`.
    `DoubleBinding` | `divide​(double other)` | Creates a new `NumberBinding` that calculates the division of this `NumberExpression` and a constant value.
    `FloatBinding` | `divide​(float other)` | Creates a new `NumberBinding` that calculates the division of this `NumberExpression` and a constant value.
    `IntegerBinding` | `divide​(int other)` | Creates a new `NumberBinding` that calculates the division of this `NumberExpression` and a constant value.
    `LongBinding` | `divide​(long other)` | Creates a new `NumberBinding` that calculates the division of this `NumberExpression` and a constant value.
    `double` | `doubleValue()` | Returns the value of this `ObservableNumberValue` as a `double`.
    `float` | `floatValue()` | Returns the value of this `ObservableNumberValue` as a `float`.
    `Integer` | `getValue()` | Returns the current value of this `ObservableValue`
    `static IntegerExpression` | `integerExpression​(ObservableIntegerValue value)` | Returns a `IntegerExpression` that wraps a `ObservableIntegerValue`.
    `static <T extends Number> IntegerExpression` | `integerExpression​(ObservableValue<T> value)` | Returns an `IntegerExpression` that wraps an `ObservableValue`.
    `int` | `intValue()` | Returns the value of this `ObservableNumberValue` as an `int` .
    `long` | `longValue()` | Returns the value of this `ObservableNumberValue` as a `long` .
    `DoubleBinding` | `multiply​(double other)` | Creates a new `NumberBinding` that calculates the product of this `NumberExpression` and a constant value.
    `FloatBinding` | `multiply​(float other)` | Creates a new `NumberBinding` that calculates the product of this `NumberExpression` and a constant value.
    `IntegerBinding` | `multiply​(int other)` | Creates a new `NumberBinding` that calculates the product of this `NumberExpression` and a constant value.
    `LongBinding` | `multiply​(long other)` | Creates a new `NumberBinding` that calculates the product of this `NumberExpression` and a constant value.
    `IntegerBinding` | `negate()` | Creates a new `NumberBinding` that calculates the negation of `NumberExpression`.
    `DoubleBinding` | `subtract​(double other)` | Creates a new `NumberBinding` that calculates the difference of this `NumberExpression` and a constant value.
    `FloatBinding` | `subtract​(float other)` | Creates a new `NumberBinding` that calculates the difference of this `NumberExpression` and a constant value.
    `IntegerBinding` | `subtract​(int other)` | Creates a new `NumberBinding` that calculates the difference of this `NumberExpression` and a constant value.
    `LongBinding` | `subtract​(long other)` | Creates a new `NumberBinding` that calculates the difference of this `NumberExpression` and a constant value.

    - ### Methods inherited from class javafx.beans.binding.NumberExpressionBase

      `add, asString, asString, asString, divide, greaterThan, greaterThan, greaterThan, greaterThan, greaterThan, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, lessThan, lessThan, lessThan, lessThan, lessThan, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, multiply, numberExpression, subtract`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface javafx.beans.Observable

      `addListener, removeListener`

    - ### Methods inherited from interface javafx.beans.value.ObservableIntegerValue

      `get`

    - ### Methods inherited from interface javafx.beans.value.ObservableValue

      `addListener, removeListener`

- - ### Constructor Detail

    - #### IntegerExpression

          public IntegerExpression()

  - ### Method Detail

    - #### intValue

          public int intValue()

      Description copied from interface: `ObservableNumberValue`
      Returns the value of this `ObservableNumberValue` as an `int` . If the value is not an `int`, a standard cast is performed.
      Specified by:
        `intValue` in interface `ObservableNumberValue`
      Returns:
        The value of this `ObservableNumberValue` as an `int`

    - #### longValue

          public long longValue()

      Description copied from interface: `ObservableNumberValue`
      Returns the value of this `ObservableNumberValue` as a `long` . If the value is not a `long`, a standard cast is performed.
      Specified by:
        `longValue` in interface `ObservableNumberValue`
      Returns:
        The value of this `ObservableNumberValue` as a `long`

    - #### floatValue

          public float floatValue()

      Description copied from interface: `ObservableNumberValue`
      Returns the value of this `ObservableNumberValue` as a `float`. If the value is not a `float`, a standard cast is performed.
      Specified by:
        `floatValue` in interface `ObservableNumberValue`
      Returns:
        The value of this `ObservableNumberValue` as a `float`

    - #### doubleValue

          public double doubleValue()

      Description copied from interface: `ObservableNumberValue`
      Returns the value of this `ObservableNumberValue` as a `double`. If the value is not a `double`, a standard cast is performed.
      Specified by:
        `doubleValue` in interface `ObservableNumberValue`
      Returns:
        The value of this `ObservableNumberValue` as a `double`

    - #### getValue

          public Integer getValue()

      Description copied from interface: `ObservableValue`
      Returns the current value of this `ObservableValue`
      Specified by:
        `getValue` in interface `ObservableValue<Number>`
      Returns:
        The current value

    - #### integerExpression

          public static IntegerExpression integerExpression​(ObservableIntegerValue value)

      Returns a `IntegerExpression` that wraps a `ObservableIntegerValue`. If the `ObservableIntegerValue` is already a `IntegerExpression`, it will be returned. Otherwise a new `IntegerBinding` is created that is bound to the `ObservableIntegerValue`.
      Parameters:
        `value` - The source `ObservableIntegerValue`
      Returns:
        A `IntegerExpression` that wraps the `ObservableIntegerValue` if necessary
      Throws:
        `NullPointerException` - if `value` is `null`

    - #### integerExpression

          public static <T extends Number> IntegerExpression integerExpression​(ObservableValue<T> value)

      Returns an `IntegerExpression` that wraps an `ObservableValue`. If the `ObservableValue` is already a `IntegerExpression`, it will be returned. Otherwise a new `IntegerBinding` is created that is bound to the `ObservableValue`.

      Note: this method can be used to convert an `ObjectExpression` or `ObjectProperty` of specific number type to IntegerExpression, which is essentially an `ObservableValue<Number>`. See sample below.

      >        IntegerProperty integerProperty = new SimpleIntegerProperty(1);
      >        ObjectProperty<Integer> objectProperty = new SimpleObjectProperty<>(2);
      >        BooleanBinding binding = integerProperty.greaterThan(IntegerExpression.integerExpression(objectProperty));

      Note: null values will be interpreted as 0
      Type Parameters:
        `T` - The type of Number to be wrapped
      Parameters:
        `value` - The source `ObservableValue`
      Returns:
        A `IntegerExpression` that wraps the `ObservableValue` if necessary
      Throws:
        `NullPointerException` - if `value` is `null`
      Since:
        JavaFX 8.0

    - #### negate

          public IntegerBinding negate()

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the negation of `NumberExpression`.
      Specified by:
        `negate` in interface `NumberExpression`
      Returns:
        the new `NumberBinding`

    - #### add

          public DoubleBinding add​(double other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the sum of this `NumberExpression` and a constant value.
      Specified by:
        `add` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### add

          public FloatBinding add​(float other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the sum of this `NumberExpression` and a constant value.
      Specified by:
        `add` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### add

          public LongBinding add​(long other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the sum of this `NumberExpression` and a constant value.
      Specified by:
        `add` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### add

          public IntegerBinding add​(int other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the sum of this `NumberExpression` and a constant value.
      Specified by:
        `add` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### subtract

          public DoubleBinding subtract​(double other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the difference of this `NumberExpression` and a constant value.
      Specified by:
        `subtract` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### subtract

          public FloatBinding subtract​(float other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the difference of this `NumberExpression` and a constant value.
      Specified by:
        `subtract` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### subtract

          public LongBinding subtract​(long other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the difference of this `NumberExpression` and a constant value.
      Specified by:
        `subtract` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### subtract

          public IntegerBinding subtract​(int other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the difference of this `NumberExpression` and a constant value.
      Specified by:
        `subtract` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### multiply

          public DoubleBinding multiply​(double other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the product of this `NumberExpression` and a constant value.
      Specified by:
        `multiply` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### multiply

          public FloatBinding multiply​(float other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the product of this `NumberExpression` and a constant value.
      Specified by:
        `multiply` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### multiply

          public LongBinding multiply​(long other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the product of this `NumberExpression` and a constant value.
      Specified by:
        `multiply` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### multiply

          public IntegerBinding multiply​(int other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the product of this `NumberExpression` and a constant value.
      Specified by:
        `multiply` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### divide

          public DoubleBinding divide​(double other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the division of this `NumberExpression` and a constant value.
      Specified by:
        `divide` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### divide

          public FloatBinding divide​(float other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the division of this `NumberExpression` and a constant value.
      Specified by:
        `divide` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### divide

          public LongBinding divide​(long other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the division of this `NumberExpression` and a constant value.
      Specified by:
        `divide` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### divide

          public IntegerBinding divide​(int other)

      Description copied from interface: `NumberExpression`
      Creates a new `NumberBinding` that calculates the division of this `NumberExpression` and a constant value.
      Specified by:
        `divide` in interface `NumberExpression`
      Parameters:
        `other` - the constant value
      Returns:
        the new `NumberBinding`

    - #### asObject

          public ObjectExpression<Integer> asObject()

      Creates an `ObjectExpression` that holds the value of this `IntegerExpression`. If the value of this `IntegerExpression` changes, the value of the `ObjectExpression` will be updated automatically.
      Returns:
        the new `ObjectExpression`
      Since:
        JavaFX 8.0