Javaでは、以下のような短縮型変数代入を使用しようとしています。現在、owner
は別の行に割り当てられていますが、以下のように同じ行に入れたいと思います。これは機能していません - それは不可能であるか、別の経路がありますか?省略形の変数代入
if ((User owner = search.getOwner()) instanceof User && owner.getId() != null) {
searchQuery.append("owner_id = :ownerId AND ");
queryMap.put("ownerId", owner.getId());
}
おかげ
'User'型の変数に格納されているオブジェクトが' instanceof User'であるかどうかをチェックするのは少し奇妙です。変数にnullが含まれていない限り、Javaはこのテストが真であるオブジェクトのみを許可するので、 'instanceof User'テストは'!= null'と簡単に表現できます –