Wenn Sie sich
if (!x) {
if (x == false) {
Es sieht so aus, als ob !x besser ist, aber
if (!isSomething()) {
if (isSomething() == false) {
können Sie leicht die !
Was ist zu tun? Gibt es eine Empfehlung?
Wenn Sie sich
if (!x) {
if (x == false) {
Es sieht so aus, als ob !x besser ist, aber
if (!isSomething()) {
if (isSomething() == false) {
können Sie leicht die !
Was ist zu tun? Gibt es eine Empfehlung?
Die versteckte dritte Option besteht darin, Ihre Variablen und Methoden richtig zu benennen.
Anstelle von
if (!isDisabled()) {
...
}
utilice
if (isEnabled()) {
...
}
oder wenn Sie auf das Negative prüfen wollen:
boolean disabled = !isEnabled();
if (disabled) {
...
}
oder beide Methoden hinzufügen:
boolean isDisabled() {
return !isEnabled();
}
Edit: Ich habe diese Frage gefunden: Ist es schlecht, explizit gegen boolesche Konstanten zu vergleichen, z. B. if (b == false) in Java?
Ich würde bei der Notation bleiben if (!isSomething()) {
. Wenn es für Sie oder andere schwer zu lesen ist, können Sie immer ein wenig Leerraum um das '!' herum hinzufügen, um es hervorzuheben:
if ( ! isSomething()) {
o if ( !isSomething()) {
Außerdem können mehrere bedingte Anweisungen mit der folgenden Notation unübersichtlich werden
if (isSomething() == false && isSomethingElse() == false && ..)
,
während seine Alternative kurz und bündig ist. Nach einer Weile wird es natürlich, das '!' zusammen mit den Anweisungen als "not isSomething() and not isSomethingElse()" zu lesen.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.