You're right - a integer can not be transformed into a boolean in
Java. The reason this is shown is because this was a trick often used in C++:
You see, in C and C++, an int could be used wherever boolean was expected. The value was interpreted as 0 = false and anything else = true.
All the JLS is talking about is how to build an expression that allows you to do something similar in Java in spite of the fact that you can't
actually an integer where a boolean in expected. Rather, you can use a boolean expression involving an integer where a boolean is expected.
I hope that helps,
Corey