> ## Documentation Index
> Fetch the complete documentation index at: https://cdktn.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Java: Op

> CDKTN Core API Reference for Op in Java.

This class contains static functions for all arithmetical and logical operators in the Terraform configuration language.

## Initializers <a name="Initializers" id="cdktn.Op.Initializer" />

```java theme={null}
import io.cdktn.cdktn.Op;

new Op();
```

| **Name** | **Type** | **Description** |
| -------- | -------- | --------------- |

***

## Static Functions <a name="Static Functions" id="Static Functions" />

| **Name**                                           | **Description**         |   |        |
| -------------------------------------------------- | ----------------------- | - | ------ |
| <code><a href="#cdktn.Op.add">add</a></code>       | Renders left + right.   |   |        |
| <code><a href="#cdktn.Op.and">and</a></code>       | Renders left && right.  |   |        |
| <code><a href="#cdktn.Op.div">div</a></code>       | Renders left / right.   |   |        |
| <code><a href="#cdktn.Op.eq">eq</a></code>         | Renders left == right.  |   |        |
| <code><a href="#cdktn.Op.gt">gt</a></code>         | Renders left > right.   |   |        |
| <code><a href="#cdktn.Op.gte">gte</a></code>       | Renders left >= right.  |   |        |
| <code><a href="#cdktn.Op.lt">lt</a></code>         | Renders left \< right.  |   |        |
| <code><a href="#cdktn.Op.lte">lte</a></code>       | Renders left \<= right. |   |        |
| <code><a href="#cdktn.Op.mod">mod</a></code>       | Renders left % right.   |   |        |
| <code><a href="#cdktn.Op.mul">mul</a></code>       | Renders left \* right.  |   |        |
| <code><a href="#cdktn.Op.negate">negate</a></code> | Renders -expression.    |   |        |
| <code><a href="#cdktn.Op.neq">neq</a></code>       | Renders left != right.  |   |        |
| <code><a href="#cdktn.Op.not">not</a></code>       | Renders !expression.    |   |        |
| <code><a href="#cdktn.Op.or">or</a></code>         | Renders left            |   | right. |
| <code><a href="#cdktn.Op.sub">sub</a></code>       | Renders left - right.   |   |        |

***

### `add` <a name="add" id="cdktn.Op.add" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.add(java.lang.Object left, java.lang.Object right)
```

Renders left + right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.add.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.add.parameter.right" />

* *Type:* java.lang.Object

***

### `and` <a name="and" id="cdktn.Op.and" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.and(java.lang.Object left, java.lang.Object right)
```

Renders left && right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.and.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.and.parameter.right" />

* *Type:* java.lang.Object

***

### `div` <a name="div" id="cdktn.Op.div" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.div(java.lang.Object left, java.lang.Object right)
```

Renders left / right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.div.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.div.parameter.right" />

* *Type:* java.lang.Object

***

### `eq` <a name="eq" id="cdktn.Op.eq" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.eq(java.lang.Object left, java.lang.Object right)
```

Renders left == right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.eq.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.eq.parameter.right" />

* *Type:* java.lang.Object

***

### `gt` <a name="gt" id="cdktn.Op.gt" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.gt(java.lang.Object left, java.lang.Object right)
```

Renders left > right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.gt.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.gt.parameter.right" />

* *Type:* java.lang.Object

***

### `gte` <a name="gte" id="cdktn.Op.gte" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.gte(java.lang.Object left, java.lang.Object right)
```

Renders left >= right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.gte.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.gte.parameter.right" />

* *Type:* java.lang.Object

***

### `lt` <a name="lt" id="cdktn.Op.lt" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.lt(java.lang.Object left, java.lang.Object right)
```

Renders left \< right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.lt.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.lt.parameter.right" />

* *Type:* java.lang.Object

***

### `lte` <a name="lte" id="cdktn.Op.lte" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.lte(java.lang.Object left, java.lang.Object right)
```

Renders left \<= right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.lte.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.lte.parameter.right" />

* *Type:* java.lang.Object

***

### `mod` <a name="mod" id="cdktn.Op.mod" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.mod(java.lang.Object left, java.lang.Object right)
```

Renders left % right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.mod.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.mod.parameter.right" />

* *Type:* java.lang.Object

***

### `mul` <a name="mul" id="cdktn.Op.mul" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.mul(java.lang.Object left, java.lang.Object right)
```

Renders left \* right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.mul.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.mul.parameter.right" />

* *Type:* java.lang.Object

***

### `negate` <a name="negate" id="cdktn.Op.negate" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.negate(java.lang.Object expression)
```

Renders -expression.

#### `expression`<sup>Required</sup> <a name="expression" id="cdktn.Op.negate.parameter.expression" />

* *Type:* java.lang.Object

***

### `neq` <a name="neq" id="cdktn.Op.neq" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.neq(java.lang.Object left, java.lang.Object right)
```

Renders left != right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.neq.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.neq.parameter.right" />

* *Type:* java.lang.Object

***

### `not` <a name="not" id="cdktn.Op.not" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.not(java.lang.Object expression)
```

Renders !expression.

#### `expression`<sup>Required</sup> <a name="expression" id="cdktn.Op.not.parameter.expression" />

* *Type:* java.lang.Object

***

### `or` <a name="or" id="cdktn.Op.or" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.or(java.lang.Object left, java.lang.Object right)
```

Renders left || right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.or.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.or.parameter.right" />

* *Type:* java.lang.Object

***

### `sub` <a name="sub" id="cdktn.Op.sub" />

```java theme={null}
import io.cdktn.cdktn.Op;

Op.sub(java.lang.Object left, java.lang.Object right)
```

Renders left - right.

#### `left`<sup>Required</sup> <a name="left" id="cdktn.Op.sub.parameter.left" />

* *Type:* java.lang.Object

***

#### `right`<sup>Required</sup> <a name="right" id="cdktn.Op.sub.parameter.right" />

* *Type:* java.lang.Object

***
