# Operators

The workflow programming language supports several standard Java operations. These operations are special symbols that performing specific operations on one or more operands and return a result.

Operators by Type

## Unary

A unary operation is an operation with only one operand.

OperatorDescription
`++`Increases the value of an operand by 1.
`--`Decreases the value of an operand by 1.
`!`Logical NOT.

## Relational

A relational operator compares the relationship between two entities. Returns a `Boolean` value that states whether the comparison is true or false.

OperatorDescription
`<`Less than operator.
`>`Greater than operator.
`<=`Less than or equal operator.
`=>`Greater than or equal operator.

## Equality

Evaluates the equivalence of two operators. Returns a `Boolean` value that states whether the equivalence is true or false.

OperatorDescription
`==`Equality operator.
`!=`Inequality operator.

## Assignment

Assigns a value to its left operand based on the value of its right operand.

OperatorDescription
`=`Assigns a value to a variable.

## Binary Logical

Logical operators are typically used with Boolean (logical) values. Return a Boolean value.

OperatorDescription
`&&`Logical AND.
`||`Logical OR.

## Arithmetic

Arithmetic operators take numeric values (either literals or variables) as their operands and return a single numerical value.

OperatorDescription
`+`Addition operator. Concatenates string types, adds integers, summarizes dates and time-related values.
`-`Subtraction operator.
`*`Multiplication operator.
`/`Division operator.
`%`Remainder operator.

The `+` and `-` operators can also be used with dates, periods, and durations. For more information, see Working with Dates and Times.

## Grouping

The grouping operator consists of a pair of parentheses around an expression or sub-expression.

OperatorDescription
`( )`Overrides the normal operator precedence so that expressions with lower precedence can be evaluated before an expression with higher priority.