If it is ok to exploit the question a little bit, then I will add some new Java. The trick is for sure not new, but perhaps interesting that this is possible in Java.
static void pleaseDoNotDoThis() throws Exception {
Field field = Boolean.class.getField("FALSE");
field.setAccessible(true);
Field modifiersField = Field.class.getDeclaredField("modifiers");
modifiersField.setAccessible(true);
modifiersField.setInt(field, field.getModifiers() & ~Modifier.FINAL);
field.set(null, true);
}
public static void main(String args[]) throws Exception {
pleaseDoNotDoThis();
doit(1);
doit("NO");
doit(null);
doit(Math.PI);
}
static void doit(long x) {
System.out.format("(x == x + 2) = (%d == %d) = %s\n", x, x+2, (x == x + 2));
}
static void doit(String x) {
System.out.format("(x == x + 2) = (%s == %s) = %s\n", x, x+2, (x == x + 2));
}
static void doit(double x) {
System.out.format("(x == x + 2) = (%f == %f) = %s\n", x, x+2, (x == x + 2));
}
And the results:
(x == x + 2) = (1 == 3) = true
(x == x + 2) = (NO == NO2) = true
(x == x + 2) = (null == null2) = true
(x == x + 2) = (3,141593 == 5,141593) = true
(x == x + 2) = (Infinity == Infinity) = true