Java Notes
Comparison Operators
All the standard comparison operators work for primitive values (int, double, char, ...). The == and != operators can be used to compare object references, but see Comparing Objects for how to compare object values.
Operators
The result of every comparison is boolean
(true
or false
).
operator | meaning |
< | less than |
<= | less than or equal to |
== | equal to |
>= | greater than or equal to |
> | greater than |
!= | not equal |
Common Errors
0 < x < 100
- Comparison operators can be used with two numbers.
Although you can write
0 < x < 100
in mathematics, it is illegal in Java. You must write this as the and of two comparisons:
0<x && x<100
=
instead of==
- Using the assignment operator instead of equality will produce a compiler error, which is easy to fix.
==
with floating-point- Because floating-point numbers are not exact, you should
always use
>=
or<=
instead of==
. For example, because the decimal number 0.1 can not be represented exactly in binary, (0.1 + 0.1 + 0.1) is not equal to 0.3!
For C/C++ Programmers
The Java comparison operators look exactly the same as the C/C++ comparison operators.
The difference is that the result type is boolean. Because of this, the
common C error of using =
instead of ==
is
almost completely eliminated. Java doesn't allow operator overloading however,
something that C++ programmers might miss.