Note: information on this page refers to Ceylon 1.0, not to the current release.
++
(increment) operator
The left-associative, unary ++
operators increment their operand; they
differ in whether the result is assigned before or after the increment.
Usage
Postfix unary ++
operator has the operator after the operand:
variable Integer num = 1;
num++;
Prefix unary ++
operator puts the operator before the operand:
variable Integer num = 1;
++num;
Description
Both operators increment their operand by one. The difference is that the prefix operator updates its operand and evaluates to the updated value. The postfix operator, in contrast, increments its operand but evaluates to the value of the operand before the increment.
Definition
The prefix ++
is defined as:
rhs = rhs.successor
The postfix ++
is defined as:
(++lhs).predecessor
See the language specification for more details.
Polymorphism
The ++
operator is polymorphic.
The meaning of ++
depends on the
Ordinal
.
Type
The result type of the ++
operator is the same as the Ordinal
type of its operand.
See also
- -- (decrement) operator
- arithmetic operators in the language specification
- operator precedence in the language specification
- Operator polymorphism and Numeric operator semantics in the Tour of Ceylon