# Class ELArithmetic

java.lang.Object
org.apache.el.lang.ELArithmetic

Direct Known Subclasses:
  `ELArithmetic.BigDecimalDelegate`, `ELArithmetic.BigIntegerDelegate`, `ELArithmetic.DoubleDelegate`, `ELArithmetic.LongDelegate`

public abstract class ELArithmetic extends Object
A helper class of Arithmetic defined by the EL Specification

Author:
  Jacob Hookom [jacob@hookom.net]

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static final class`
`ELArithmetic.BigDecimalDelegate`
`static final class`
`ELArithmetic.BigIntegerDelegate`
`static final class`
`ELArithmetic.DoubleDelegate`
`static final class`
`ELArithmetic.LongDelegate`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final ELArithmetic.BigDecimalDelegate`
`BIGDECIMAL`
`static final ELArithmetic.BigIntegerDelegate`
`BIGINTEGER`
`static final ELArithmetic.DoubleDelegate`
`DOUBLE`
`static final ELArithmetic.LongDelegate`
`LONG`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`ELArithmetic()`

## Method Summary

Modifier and Type
Method
Description
`protected abstract Number`
`add(Number num0, Number num1)`
`static final Number`
`add(Object obj0, Object obj1)`
`protected abstract Number`
`coerce(Number num)`
`protected final Number`
`coerce(Object obj)`
`protected abstract Number`
`coerce(String str)`
`protected abstract Number`
`divide(Number num0, Number num1)`
`static final Number`
`divide(Object obj0, Object obj1)`
`static final boolean`
`isNumber(Object obj)`
`static final boolean`
`isNumberType(Class<?> type)`
`protected abstract boolean`
`matches(Object obj0, Object obj1)`
`protected abstract Number`
`mod(Number num0, Number num1)`
`static final Number`
`mod(Object obj0, Object obj1)`
`protected abstract Number`
`multiply(Number num0, Number num1)`
`static final Number`
`multiply(Object obj0, Object obj1)`
`protected abstract Number`
`subtract(Number num0, Number num1)`
`static final Number`
`subtract(Object obj0, Object obj1)`

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

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

## Field Details

### BIGDECIMAL

public static final ELArithmetic.BigDecimalDelegate BIGDECIMAL

### BIGINTEGER

public static final ELArithmetic.BigIntegerDelegate BIGINTEGER

### DOUBLE

public static final ELArithmetic.DoubleDelegate DOUBLE

### LONG

public static final ELArithmetic.LongDelegate LONG

## Constructor Details

### ELArithmetic

protected ELArithmetic()

## Method Details

### add

public static final Number add(Object obj0, Object obj1)

### mod

public static final Number mod(Object obj0, Object obj1)

### subtract

public static final Number subtract(Object obj0, Object obj1)

### divide

public static final Number divide(Object obj0, Object obj1)

### multiply

public static final Number multiply(Object obj0, Object obj1)

### isNumber

public static final boolean isNumber(Object obj)

### isNumberType

public static final boolean isNumberType(Class<?> type)

### add

protected abstract Number add(Number num0, Number num1)

### multiply

protected abstract Number multiply(Number num0, Number num1)

### subtract

protected abstract Number subtract(Number num0, Number num1)

### mod

protected abstract Number mod(Number num0, Number num1)

### coerce

protected abstract Number coerce(Number num)

### coerce

protected final Number coerce(Object obj)

### coerce

protected abstract Number coerce(String str)

### divide

protected abstract Number divide(Number num0, Number num1)

### matches

protected abstract boolean matches(Object obj0, Object obj1)