Double Ausgabe nicht wissenschaftlich

Fohnbit

Top Contributor
Hallo,

ich habe folgende Formel:
Java:
val = 0.0025 * value - 0.01;
value = 4.3

das ergibt: 0,00075

Nun möchte ich dies auf 5 Stellen gerundet ausgeben:
Java:
val = round(val, 5);
System.out.println(val);

private double round(double value, int decimalPoints) {
        double d = Math.pow(10, decimalPoints);
        return Math.round(value * d) / d;
    }

Bekomme aber immer:
7.5E-4

Wo ist mein Fehler?
Warum ist die Ausgabe nicht 0,00075

Vielen Dank!
 

Fohnbit

Top Contributor
Ja, ich muss aber das double weiter geben und es wird dort ausgeben.
Daher muss ich den Double Wert mit 5 Stellen haben ... also nicht als String!

oder muss ich zu String und dann wieder zu double?
 

Fohnbit

Top Contributor
Ich habe gerade etwas getestet:
Kann Java kein double mit 4 Nachstellenkommas als normale Zahl ausgeben?
Java:
double test = 0.0007;
System.out.println(test);
ergibt 7.0E-4

Java:
double test = 0.007;
System.out.println(test);
ergibt 0.007
 

kneitzel

Top Contributor
Also ganz langsam:
Erst einmal ist das halt die Ausgabe dieser double Zahl. Die Zahl selbst ist einfach eine Zahl und hat einfach einen Wert.

Was Du aber nun haben willst ist eine spezielle Ausgabe. Und das sind ja Zeichen. Und das ist tatsächlich streng genommen ein String.
Und entweder du hast eine Ausgabe Methode, die die Formatierung mit entgegen nimmt oder du musst wirklich über einen String gehen. Dazu würde z.B. String.format dienen:
String.format("%.5f", val);
 

Fohnbit

Top Contributor
Zur Erklärung:
ich schreibe eine kleine Applikation für ein Plugin System.

Ich übergeben den double Wert und die Applikation stellt diese dar. Das kann ich nicht ändern oder formatieren.

Demnach stellt Java ab 4 Nachkommastellen die Ausgabe wissenschaftlich dar.
Bis 3 wird die Ausgabe als normale Zahl dargestellt.

Demnach muss ich mich wohl mit 3 Stellen Zufrieden geben :)
 

kneitzel

Top Contributor
Wo ist das Problem? Was übergibst Du wo wie?

Wenn Du einen double übergibst, dann übergibst Du den eigentlichen Wert. Da gibt es keine Darstellung. Das sind dann einfach die 8 Bytes.
Wenn Du es aber in Textform übergibst, dann sind es ja Zeichen - dann machst Du die Übergabe nach der entsprechenden Umwandlung.

Das was Du hier an Ausgabe Problematik darstellst ist ein nicht existentes Problem!
 

temi

Top Contributor
Ich habe gerade etwas getestet:
Das was du da getestet hast, passt nicht zu dem, was du hier schreibst:
Ich übergeben den double Wert und die Applikation stellt diese dar.

In deinem Test stellst du (mittels println()) ja den double Wert (als String - oder Zeichen) auf der Konsole dar. Der eigentliche double Wert besteht aus 64 Bits, die interpretiert werden wollen. Du hast also getestet, wie println() einen double Wert ausgibt.
 
Zuletzt bearbeitet:

Fohnbit

Top Contributor
Danke für Eure Hilfe!

Ich beschränke mich auf max. 3 Nachkommastellen und dann passt die Darstellung in der "Mutterapplikation"
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Fragen zu Ausgabe double und float Java Basics - Anfänger-Themen 3
C Konvertierung des int typs in den double typ für die Ausgabe mit Nachkommastellen Java Basics - Anfänger-Themen 4
B HQL / Hibernate, GroupBy und Ausgabe als Double Java Basics - Anfänger-Themen 1
M Double-Ausgabe in JTextField fehlerhaft Java Basics - Anfänger-Themen 2
D jtextField Ausgabe double Java Basics - Anfänger-Themen 4
D double Ausgabe Java Basics - Anfänger-Themen 2
T Ausgabe von Werten des Typs double Java Basics - Anfänger-Themen 8
J Double Variable und Addition Java Basics - Anfänger-Themen 2
Kotelettklopfer Variablen Double zwingen Ganzzahlen mit 2 Nachkommastellen auszugeben Java Basics - Anfänger-Themen 10
A possible lossy conversion from double to int Java Basics - Anfänger-Themen 5
I Output BigDecimal anstatt double / Problem beim Rechnen Java Basics - Anfänger-Themen 16
L ArrayList<String> --> double[] array Java Basics - Anfänger-Themen 18
FelixN Array mit verschiedene Datentypen als Rückgabewert? (Long und Double) Java Basics - Anfänger-Themen 3
J Transformation zweier Integer in ein Double Java Basics - Anfänger-Themen 26
N The method setSaldo(double) in the type Konto is not applicable for the arguments (int, int) Java Basics - Anfänger-Themen 2
V Erste Schritte Die Nuller bei double NICHT abschneiden Java Basics - Anfänger-Themen 4
Y Datentypen Double Division ungenau Java Basics - Anfänger-Themen 45
L Datentypen Rechnen und abrunden mit double Java Basics - Anfänger-Themen 7
M Writer für unterschiedliche Obj/inbt/double erstellen? Java Basics - Anfänger-Themen 1
F Character umwandeln als Double Werte Java Basics - Anfänger-Themen 8
M Double Wert nach n abschneiden ohne zu runden Java Basics - Anfänger-Themen 1
D Methode mit Übergabe double und Rückgabe String Java Basics - Anfänger-Themen 2
P Hilfe bei Double Java Basics - Anfänger-Themen 1
B Rückgabe von zwei Werten: String und double Java Basics - Anfänger-Themen 14
M Konvertierung String -> double Java Basics - Anfänger-Themen 8
A Double Scan eingrenzen Java Basics - Anfänger-Themen 2
O Erste Schritte Potenzmethode per double Java Basics - Anfänger-Themen 11
A Random Double mit Math.round() runden? Java Basics - Anfänger-Themen 1
H Double oder nicht? Java Basics - Anfänger-Themen 7
J int array als double array ausgeben Java Basics - Anfänger-Themen 9
M Int und Double in Array speichern Java Basics - Anfänger-Themen 1
J String, Int und double Array sortieren Java Basics - Anfänger-Themen 16
B Hashing (verkettet/double) Java Basics - Anfänger-Themen 0
L Konvertieren von String zu double?! Java Basics - Anfänger-Themen 6
V Operatoren Warum kommt bei double bei den Nachkommastellen irgendwann eine 2?! (1.20000000000002) Java Basics - Anfänger-Themen 5
geekex Double zu String umwandeln in einer Methode Java Basics - Anfänger-Themen 28
E Bruch erstellen - Von Int zu Double Ergebnis Java Basics - Anfänger-Themen 24
G Probleme beim casten von double zu int Java Basics - Anfänger-Themen 3
I Double.ParseDouble 2 Textfelder Java Basics - Anfänger-Themen 1
M JComboBox feste double Werte zu ordnen Java Basics - Anfänger-Themen 8
P Datentypen Kann ich bei double Komma statt Punkt eingeben? Java Basics - Anfänger-Themen 14
E Von Double zu Long umwandeln Java Basics - Anfänger-Themen 9
L Bei falscher Eingabe soll NaN zurückgegeben werden, Rückgabetyp jedoch double Java Basics - Anfänger-Themen 3
V Variablen Double später deklarieren Java Basics - Anfänger-Themen 7
V double = 1.34823e-300 Java Basics - Anfänger-Themen 5
W double*double error Java Basics - Anfänger-Themen 4
kilopack15 Mehr Nachkommastellen mit double Java Basics - Anfänger-Themen 14
T Input/Output Double und String als Eingabe einlesen Java Basics - Anfänger-Themen 9
J [Rundungsfehler bei Double] Grundkurs Java: Checke Lösungsweg nicht Java Basics - Anfänger-Themen 1
W In einer Function<Double, Double> undefinierte Rechenoperationen abfangen? Java Basics - Anfänger-Themen 3
T set Metode für Double Java Basics - Anfänger-Themen 6
Hijo2006 String to Double Java Basics - Anfänger-Themen 4
K Double Wert runden und in Int umwandeln Java Basics - Anfänger-Themen 7
A Kommafehler beim double einleseen korrigieren Java Basics - Anfänger-Themen 2
K Operatoren The Operator * is undefined for the argument type(s) double, String Java Basics - Anfänger-Themen 4
das_leon String zu double konventieren Java Basics - Anfänger-Themen 1
K Genauer als Double? Java Basics - Anfänger-Themen 4
T Double.parseDouble(args[0]) Java Basics - Anfänger-Themen 13
A Java Ungenauigkeit double Java Basics - Anfänger-Themen 6
B Methoden The method mirror(double[]) in the type Convolution is not applicable for the arguments (double) Java Basics - Anfänger-Themen 8
C Typumwandlung von int<-->double Java Basics - Anfänger-Themen 6
M Double Wert auf 2 Kommastellen runden Java Basics - Anfänger-Themen 2
S Regelabfragen aus Double-Array Java Basics - Anfänger-Themen 2
A Erste Schritte Double Wert aus String zu int Java Basics - Anfänger-Themen 2
P Rückgabe erflogt nicht als Double Java Basics - Anfänger-Themen 2
K Erste Schritte switch - Warum sind long/float/double/... nicht erlaubt? Java Basics - Anfänger-Themen 5
P scanner ein Double einlesen Java Basics - Anfänger-Themen 10
T Java double berechnung fehler Java Basics - Anfänger-Themen 2
S double[x] , double[y] zu Point[] points kopieren? Java Basics - Anfänger-Themen 15
G double in float umwandeln Java Basics - Anfänger-Themen 2
F double[] an andere Methode übergeben Java Basics - Anfänger-Themen 1
B Datentypen Test float und double speichern Zahlen nur ungefähr Java Basics - Anfänger-Themen 4
S Datentypen double - kommastellen abschneiden Java Basics - Anfänger-Themen 6
M int double int double Graph Java Basics - Anfänger-Themen 3
K ArrayList<Double> --> double[] array Java Basics - Anfänger-Themen 5
Z Double in komma und Punkt akzeptieren -> Robusteeingabe Java Basics - Anfänger-Themen 7
S Double und Gleitkommazahlen mit JUnit testen Java Basics - Anfänger-Themen 7
B Datentypen Multiplzieren mit double wird ungenau Java Basics - Anfänger-Themen 4
K Von einem Double wert nur die Zahl vor dem Komma verwenden Java Basics - Anfänger-Themen 9
F Double neu formatieren mit NumberFormat Java Basics - Anfänger-Themen 2
T Problem mit double-Formatierung Java Basics - Anfänger-Themen 3
M Double Zahl in Grad Zahl Java Basics - Anfänger-Themen 7
M Datentypen Ergebniss- Double to String- wird nicht angezeigt Java Basics - Anfänger-Themen 13
S Double mithilfe eines Scanners so einlesen, dass ich damit rechnen kann Java Basics - Anfänger-Themen 4
M Die Double-Variable rundet? Java Basics - Anfänger-Themen 1
llabusch Methoden Methoden überlagern - entweder int || double Java Basics - Anfänger-Themen 10
S Double, int, Berechnung Java Basics - Anfänger-Themen 3
K Datentypen Wertebereich float/double - Warum nicht hoch -1 Java Basics - Anfänger-Themen 6
A Double[] Array zahlen per Argument übergeben Java Basics - Anfänger-Themen 5
B Erste Schritte Addition von double in switch-Anweisung Java Basics - Anfänger-Themen 2
D Unterschied zwischen double und Double Java Basics - Anfänger-Themen 4
M Double-Zahlen auf Intervalle runden Java Basics - Anfänger-Themen 3
D Schon wieder double -.- Java Basics - Anfänger-Themen 4
V Object in double? Java Basics - Anfänger-Themen 3
NicoDeluxe Datentypen Double to String Java Basics - Anfänger-Themen 10
M Double Punkte Zeichnen Java Basics - Anfänger-Themen 7
K Array mit Double initialisieren Java Basics - Anfänger-Themen 10
H if-Abfrage double wert Java Basics - Anfänger-Themen 5
Q Kommastellen hinter double wert entfernen Java Basics - Anfänger-Themen 5
D Erste Schritte Array mit Double Java Basics - Anfänger-Themen 32

Ähnliche Java Themen


Oben