fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6. import java.math.*;
  7.  
  8. /* Name of the class has to be "Main" only if the class is public. */
  9. class Ideone
  10. {
  11. public static void main (String[] args) throws java.lang.Exception
  12. {
  13. float accountBalance = 10000.00f;
  14. System.out.println("Operations using float:");
  15. System.out.println("1000 operations for 1.99");
  16. for(int i = 0; i<1000; i++){
  17. accountBalance -= 1.99f;
  18. }
  19. System.out.println(String.format("Account balance after float operations: %f",
  20. accountBalance));
  21.  
  22. BigDecimal accountBalanceTwo = new BigDecimal("10000.00");
  23. System.out.println("Operations using BigDecimal:");
  24. System.out.println("1000 operations for 1.99");
  25. BigDecimal operation = new BigDecimal("1.99");
  26. for(int i = 0; i<1000; i++){
  27. accountBalanceTwo = accountBalanceTwo.subtract(operation);
  28. }
  29. System.out.println(String.format("Account balance after BigDecimal operations: %f",
  30. accountBalanceTwo));
  31. }
  32. }
Success #stdin #stdout 0.15s 49124KB
stdin
Standard input is empty
stdout
Operations using float:
1000 operations for 1.99
Account balance after float operations: 8009.765625
Operations using BigDecimal:
1000 operations for 1.99
Account balance after BigDecimal operations: 8010.000000