Wie sollte ich in Java eine Division durch Null-Ausnahme werfen, ohne tatsächlich durch Null zu teilen?

Ich habe ein I2C-Gerät, dass will zwei Eingänge: einen Nenner und einen Zähler. Beide sind geschrieben an verschiedenen Adressen, so dass keine tatsächliche Berechnung (numerator/denominator) vorgenommen wird. Das problem hierbei ist, dass eine Division durch null auftreten konnte, auf das I2C-device, also eine Division durch null-Fehler kontrolliert werden muss. Ideal, genau das gleiche würde passieren, wenn die Teilung durchgeführt wurden, die von der java-code.

Im moment habe ich bodged eine nicht verwendete variable, nicht der division, aber ich mache mir sorgen das es dann optimiert aus:

public void setKp(int numerator, int divisor)
{
    int zeroCheck = numerator / divisor;
    //... doesn't use zeroCheck
}

Sicherlich gibt es einen besseren Weg geben!

Kommentar zu dem Problem
Die Antworten, die darauf hindeutet, überprüfen Teiler direkt besser scheinen, aber ich kann mir nicht vorstellen das immer wegoptimiert. Sicher, dass die zeroCheck möglicherweise nicht zugewiesen bekommen, aber die division hat ein Potenzial, um eine exception zu werfen, so kann ich mir nicht vorstellen, dass es tatsächlich wegoptimiert. Kommentarautor: Yishai

InformationsquelleAutor der Frage Eric | 2009-11-01

Schreibe einen Kommentar