本の比較的に面白いJavaの面接試験問題


最近、張孝祥が整理した面接問題の文書から面白い面接問題を見つけました。
下の二つのコードに何か不都合がありますか?
//     
if(username.equals(“zxx”){
   
}
//     
 int  x = 1;
 return x==1?true:false;
最初のプログラムでは、usernameの値がnullであれば、空のポインターエラーが発生します。
                 java.lang.Null PointerException、
実際の開発ではこのように書くことを勧めません。正しい書き方は次の通りです。
if("zxx".equals(username)){

}
二つ目のプログラムの中で、調べたところ、多くの人がこのように使っています。しかし、returnの中では判断や演算などを加えないほうがいいという意見もあります。本人もこの観点に賛成しています。しかも上のコードの中のreturnはこのように書く必要は全くありません。直接にreturn x==1と書けばいいです。なぜまだ三つの演算子が使われているのか分かりません。
どなたか知っていますか?教えてください。