Ich habe diese Operation auf Papier geschrieben und es funktioniert gut. Ich weiß, dass Java die Ausführung von links nach rechts ist und der Vorrang ist so; */+ -.Java korrekte Reihenfolge der Operationen
Java gibt mir ein anderes Ergebnis, aber ich kann nicht herausfinden, warum.
public double overTimeWage() {
if (hours > 40) {
return (40 * baseRate) + (1.5 * baseRate)
* (hours - 40);
} else {
return 0;
}
}
Hier ist die Eingänge Ich
int hours = 50;
double baseRate = 12;
mit, wie es derzeit fort liefert 660, meine erwartete Rendite 180.
ist, ich weiß, dass dies die richtige mathematische Formel ist, weil i habe es auf Papier gemacht. und ich bekomme 180 davon.
Was erwarten Sie, und was bekommen Sie? Welchen Stundenwert verwenden Sie auch, da alles von diesem Wert abhängt? Welches Debugging hast du auch gemacht? Hast du das mit einem Debugger gemacht? –
Geben Sie ein Beispiel mit den Werten aller in der Berechnung verwendeten Variablen an und teilen Sie uns mit, wie Sie die erwarteten Ergebnisse berechnen. –
Zu Ihren Diensten. Wir bitten Sie nur darum, diese Frage so schnell zu verbessern, dass sie beantwortbar ist, was wiederum von bereits bestehenden Bedingungen, erwarteten Ergebnissen und beobachteten Ergebnissen abhängt. Meine Voraussage ist, dass Ihre Annahmen von Vorbedingungen falsch sind. –