Comment tester si un double est égal à zéro?

J'ai un code comme ceci:

class Foo {
    public double x;
}

void test() {
    Foo foo = new Foo();

    //Is this a valid way to test for zero? 'x' hasn't been set to anything yet.
    if (foo.x == 0) {

    }

    foo.x = 0.0;

    //Will the same test be valid?
    if (foo.x == 0) {

    }
}

En gros, je veux éviter une division par zéro exception dans l'avenir.

Grâce

  • Pourquoi ne pas l'essayer?
  • La valeur par défaut d'un numérique type de données est 0, donc oui.
  • Il y a de positif et de négatif zéro et x == 0 tests pour les deux et ne sera jamais vous donner une exception ou une erreur. Vous obtenez seulement une erreur de division par zéro de la division de deux nombres entiers et dont le dénominateur est de 0. Puisque vous êtes à l'aide de la virgule flottante, vous n'obtiendrez jamais une exception.
  • ""x" n'a pas été créé pour rien pour le moment". Oui, il est. C'est une variable de membre, de sorte qu'il est mis à zéro par défaut.
InformationsquelleAutor user291701 | 2013-08-15