if条件に応じていくつかのアクションを実行する必要があります。イベントのタイプである場合、「GIVE_AWAY_MONEY_ON_SIGNUP」)はNullPointerExceptionが発生した場合の回避方法
private boolean verifyGiveAwayAccounting(GiveAwayMoneyVerificationEvent event) {
if(event.getVoucherType().equals(VoucherType.GIVE_AWAY_MONEY_ON_SIGNUP)){
someAction();
}
return verifySystemAccountTransaction(event);
}
IはsomeActionを(実行する必要があり - :今私はそれを条件に応じて実行され、コードを持っている
「VoucherType」私は列挙型を持っていると言います。しかし、イベントタイプは "GIVE_AWAY_MONEY_ON_SIGNUP"以外の何かを追加する必要はありません。だから私はこのコードを呼び出すときにvoucherTypeを "GIVE_AWAY_MONEY_ON_SIGNUP"に設定し、someAction()を実行します。
他のイベントタイプでは、何も特別な操作をしたくないので、バウチャータイプを決して設定しないので、if条件にnullポインタ例外が発生します。ですから、nullPointerExceptionを回避するために、私は何もダミー(他のvoucherType値)にバウチャーコードを設定しました。イベントでVoucherTypeを初期化せずにnullPointerExceptionを排除できる洗練された方法はありますか?
if(enum && enum.Football)? –
これは動作しません。条件の最初の部分はnullに評価されるため、nullPointerExceptionをスローします。 – pune06
なぜ非常に多くのダウン投票。私はコミュニティに新しい人です。私のコメント、downvotesの理由を助けてください。 – pune06