2016-06-16 8 views
-1

Wie erkennt man den Dezimalwert, der mit einem Float-Datentyp existiert?
Wenn der Dezimalteil als Null ergibt, sollte die Dezimalteil ausgenommen werden. Wie kann dies erreicht werden, wenn man mit Float-Werten umgeht, die es erleichtern?
Jemand bitte assistieren.Identifizieren des Datentyps

+1

Mögliches Duplikat von [Wie kann ein Variablentyp in Java bekannt sein?] (Http://stackoverflow.com/questions/2674554/how-know-a-variable-type-in-java) –

+0

Was muss dieser Code haben? mit dem Problem, mit dem Sie konfrontiert sind, umgehen? Bitte schreiben Sie den Code, der zeigt, dass Sie versucht haben, unser Problem zu lösen. – Popeye

Antwort

0

Ihre Variablen num1 und num2 sind beide schwimmt nicht ganze Zahlen wie in Ihrer Frage erwähnt, ich denke, dass Sie wollen, was zu erreichen ist finde einen Weg zu wissen, ob ein gegebener Gleitkomma Dezimalzahlen hat oder nicht und dafür kannst du wie folgt fortfahren:

float f = 46.0f; 
if (f % 1.0 == 0.0){ 
    System.out.printf("float without decimal %.0f%n", f); 
} else { 
    System.out.printf("float with decimals %.2f%n", f); 
} 

Ausgang:

float without decimal 46 
+0

Basierend auf der Eingabe durch den Benutzer möchte ich, dass die Werte W.R.T die Datentypen der Eingabe gespeichert werden. Kann es gemacht werden? – pinku

+0

Ich verstehe nicht, bitte umformuliere –

+0

Angenommen, dass 12 und 34 Zahlen eingegeben werden, die von Integer sind, addiert es sich zu 46. Der resultierende Wert ist 46.0, wie es vom Float-Datentyp ist. Ich möchte, dass die Ausgabe den Datentyp Integer hat und den Dezimalteil löscht. – pinku

0
inputValue.getClass().getName() 

Beispiel: value: type = java.lang.String

inputValue.getClass().getSimpleName(); 

Beispiel: value: String

0

mit der unten stehenden Lösung endete.

Hilft bei der Identifizierung des Typs des gespeicherten Werts und vermeidet die unnötige Verwendung von Dezimalstellen bei einem int-Wert.