Expressions
In Java, an expression is a combination of variables, constants, operators, and method calls that evaluates to a single value. Expressions are the building blocks of Java statements and are used to compute values, assign data, and control program flow.
Types of Expressions
- Arithmetic Expressions
- Assignment Expressions
- Relational (Comparison) Expressions
- Logical Expressions
- Conditional (Ternary) Expressions
- Method Call Expressions
Arithmetic Expressions
An arithmetic expression involves arithmetic operators (+
, -
, *
, /
, %
) and evaluates to a numerical value.
Example:
int a = 10;
int b = 5;
int result = a + b; // Expression evaluates to 15
Explanation: In this expression, a + b
evaluates to 15
, which is assigned to result
.
Assignment Expressions
An assignment expression assigns a value to a variable using the assignment operator (=
) and can include other expressions.
Example:
int a = 10;
int b;
b = a + 5; // Expression evaluates to 15 and assigns to b
Explanation: The expression a + 5
evaluates to 15
, which is assigned to the variable b
.
Relational (Comparison) Expressions
A relational expression compares two values using relational operators (==
, !=
, >
, <
, >=
, <=
). The result of such expressions is a boolean value (true
or false
).
Example:
int a = 10;
int b = 5;
boolean isGreater = a > b; // Expression evaluates to true
Explanation: The expression a > b
compares a
and b
, and returns true
since 10 is greater than 5.
Logical Expressions
Logical expressions combine boolean values and return a boolean result. Logical operators include &&
(AND), ||
(OR), and !
(NOT).
Example:
boolean a = true;
boolean b = false;
boolean result = a && b; // Expression evaluates to false
Explanation: The logical expression a && b
checks if both a
and b
are true
. Since b
is false
, the result is false
.
Conditional (Ternary) Expressions
The conditional or ternary operator (? :
) is a concise way to evaluate expressions conditionally.
Syntax:
condition ? expression1 : expression2;
If the condition
is true, expression1
is evaluated; otherwise, expression2
is evaluated.
Example:
int a = 10;
int b = 20;
int max = (a > b) ? a : b; // Expression evaluates to 20
Explanation: The condition a > b
is false
, so the expression evaluates to b
, which is 20
.
Method Call Expressions
A method call is also an expression, as it can return a value. Method call expressions involve calling a method and receiving the result.
Example:
int result = Math.max(10, 20); // Expression evaluates to 20
Explanation: The Math.max(10, 20)
method call returns the greater of the two numbers, which is 20
.