Schdeffan Geschrieben 30. Juni 2002 Geschrieben 30. Juni 2002 Hallo, folgendes Problem: das Argument einer if-Schleife wird genau dann für wahr befunden, wenn eine Gleichung eine ganze Zahl zur Lösung hat. Nun meine Frage: Gibt es eine Methode in Java, mit der ich prüfen kann, ob eine Zahl eine ganze Zahl ist? Wenn nein, wie prüfe ich es "von Hand"? Vielen Dank Schdeffan Zitieren
Tool-Time Geschrieben 30. Juni 2002 Geschrieben 30. Juni 2002 Versuch es doch einmal mit einem Datentyp vergleich. Wen es um eine 1,4 sprich Kommazahl geht brauchst du als Datentyp ja double. Das ist dann auch dein Ansatzpunkt ind dem du vergleichst ob der zurückgegeben Wert ein int oder double Wert ist. MfG Tool-Time Zitieren
Superpapagei Geschrieben 1. Juli 2002 Geschrieben 1. Juli 2002 Das wird aber ohne weiteres nicht gehen oder ? Wenn ich eine Gleichung habe muss ich das Ergebnis einer Variablen zuweisen . Diese habe ich schon zuvor initialisiert . Da du davon ausgehen musstest das es auch double sein könnte ist auch der Integerwert in einer Variablen vom Typ double . Wie kann ich denn da einen Typvergleich machen ? Das Ergebnis is doch ohnehin double , zumindest was den Typ angeht oder nicht ? Zitieren
Klotzkopp Geschrieben 1. Juli 2002 Geschrieben 1. Juli 2002 @Schdeffan: Du könntest den double mit floor( double ) vergleichen. floor liefert die nächstkleinere oder gleiche Ganzzahl, was bei positiven Zahlen dem Abschneiden der Nachkommastellen entspricht. Grundsätzlich ist es aber eher ungünstig, bei Fließkommavariablen auf Gleichheit zu testen, weil es aufgrund der Art und Weise, wie diese Zahlen im Computer gespeichert werden, zu Rundungsfehlern kommt. Zitieren
UBAI Geschrieben 1. Juli 2002 Geschrieben 1. Juli 2002 das Argument einer if-Schleife Wuste gar nicht, das es If - Schleifen gibt. :marine Zitieren
Felicie Geschrieben 1. Juli 2002 Geschrieben 1. Juli 2002 Es ist zwar total gefruckelt, aber, wenn es gar nicht anders geht, könntest du das ganze in einen String casten und dann die Stellen nach dem Komma abschneiden...entspricht dieser String dann "00" ist es eine ganze Zahl... Zitieren
Mirko Geschrieben 2. Juli 2002 Geschrieben 2. Juli 2002 Du könntest es relativ leicht "von Hand" prüfen, in dem du durch 1 dividierst und dir den Rest anguckst. Wenn der 0 ist, ist es eine ganze Zahl. Den Rest einer Division bekommst du so: 1.5 % 1 = 0.5 Gruß Mirko Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.