1. 5 <= 4+ 2 : In Java, the arithmetic operators are evaluated first before the relational operators. So, this expression is just equivalent to 5 <= (4+2) which is 5 <= 6 . In words, you are testing if 5 is smaller than or equal to 6. Of course, 5 is smaller than 6 so this expression is true.

2. In this two strings are compared. As the two strings are not same and the expression itself says "hello" not equal to "world", thus this expression is also evaluated to be true.

3. In this same logic as the first one is applied, you evaluate a < a -0 so this is same as saying a < (a - 0) which is same as a < a. But, we all know that a is equal to a, hence this expression is evaluated to be false.

Invalid means that the code is not as per the syntax of language. The syntax of this expression is totally correct but the expression itself evaluates to be false. The result of this expression is always false.

Something is invalid and something evaluates to be false. These are two different things.