In particular, if Java ever gets another ternary operator, people who use the term "conditional operator" will still be correct and unambiguous - unlike those who just say "ternary operator".
What is the Java ?: operator called and what does it do?
@ColinD Java really needn't to deal with backwards compatibility in each single line. In any Java source file using generics the old non-generic types should be forbidden (you can always use <?> if interfacing to legacy code) and the useless diamond operator should not exist.
It is the Bitwise xor operator in java which results 1 for different value of bit (ie 1 ^ 0 = 1) and 0 for same value of bit (ie 0 ^ 0 = 0) when a number is written in binary form.
Details: Java 6, Apache Commons Collection, IntelliJ 12 Update/Answer: It turns out that IntelliJ 12 supports Java 8, which supports lambdas, and is "folding" Predicates and displaying them as lambdas. Below is the "un-folded" code.
What does the arrow operator, '->', do in Java? - Stack Overflow
The parenteses I used above are implicitly used by Java. If you look at the terms this way you can easily see, that they are both the same as they are commutative.
In Java Persistence API you use them to map a Java class with database tables. For example @Table () Used to map the particular Java class to the date base table. @Entity Represents that the class is an entity class. Similarly you can use many annotations to map individual columns, generate ids, generate version, relationships etc.