すいません、質問です!
javaの式は値を持たないのでしょうか?

例えばC言語なら
if (a = b + c){
/* 変数aを使った処理 */
}

のように書けますが、
javaだと、

a = b + c;
if (a){
/* 変数aを使った処理 */
}

としなければならないのですか?