编写如下所示的多条件检查最易读/最好的方法是什么?
我能想到的两种可能性(这是 Java,但语言在这里真的无关紧要):
选项1:
boolean c1 = passwordField.getPassword().length > 0;
boolean c2 = !stationIDTextField.getText().trim().isEmpty();
boolean c3 = !userNameTextField.getText().trim().isEmpty();
if (c1 && c2 && c3) {
okButton.setEnabled(true);
}
选项 2:
if (passwordField.getPassword().length > 0 &&
!stationIDTextField.getText().trim().isEmpty() &&
!userNameTextField.getText().trim().isEmpty() {
okButton.setEnabled(true);
}
我不喜欢选项 2 的地方是换行,然后缩进变得很痛苦。我不喜欢选项 1 的一点是,它什么都不创建变量,并且需要查看两个地方。
所以你怎么看?还有其他选择吗?