2016-10-30 2 views
-3

Ich habe dieses Programm, in dem ich viele BigDecimals addieren muss. Ich habe den folgenden Code-SnippetWie viele BigDecimals in Java zusammenzufassen sind

BigDecimal Average = new BigDecimal(3.0); 
BigDecimal ATT = new BigDecimal(0.0); 
ATT.add(A_BigDecimal); 
ATT.add(B_BigDecimal); 
ATT.add(C_FullBigDecimal); 
System.out.println("Total Amount: " + ATT); 
System.out.println("Average: " + ATT.divide(Average)); 

Ich erhalte immer Fehler jedes Mal wenn ich versuche Varianten dieses Codes, wie fügen Sie viele BigDecimals zusammen? Edit: vergessen zu erwähnen, dass die Ausgabe ist Null, immer Null, als ob die Referenzvariable ist nicht Lesen der Add-Funktion.

+0

Welche Fehler bekommen Sie? – Steve

+0

@Steve aus irgendeinem Grund ist der Ausgang Null, ich bin wirklich fest – Dcdw51

+0

Sie sollten ein reproduzierbares Beispiel zur Verfügung stellen. 'A_BigDecimal',' B_BigDecimal' und 'C_FullBigDecimal' werden verwendet, aber nirgendwo definiert. – Steve

Antwort

2

BigDecimal ist unveränderlich. Sobald das Objekt erstellt wurde, kann es nicht mehr geändert werden.

Die Methode add gibt das Ergebnis der Berechnung zurück. Wahrscheinlich möchten Sie diesen Rückgabewert etwas zuweisen. Diese

0

ist, was Joe C in aktualisierten Code gemeint:

BigDecimal Average = new BigDecimal(3.0); 
BigDecimal ATT = new BigDecimal(0.0); 
ATT = ATT.add(A_BigDecimal); 
ATT = ATT.add(B_BigDecimal); 
ATT = ATT.add(C_FullBigDecimal); 
System.out.println("Total Amount: " + ATT); 
System.out.println("Average: " + ATT.divide(Average)); 
Verwandte Themen