Your two Java points - the first one: Amen. The latter - not true:
public static String foo(final boolean b) { if( b ) { return "Yes"; } else { return "No"; } }
Compiles just fine.
public static String foo(final boolean b) { if( b ) { return "Yes"; } else { return "No"; } }
Compiles just fine.