Win a copy of Think Java: How to Think Like a Computer Scientist this week in the Java in General forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Divide BigDecimal by Integer

 
Ravi Kanth D
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am trying to do a calculation within a Jasper report (java based open source reporting tool).
I have a BigDecimal variable that I need to divide by Integer variable, below is my code, please let me know what is wrong.
varBigDecimal1.divide(BigDecimal.valueOf(varInteger1.doubleValue()))
 
Saifuddin Merchant
Ranch Hand
Posts: 607
Firefox Browser Java Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Why don't you tell us - whats happening that you think is wrong. Looks OK to me! (BigDecimal is immutable so you need to assign the result to another variable though)
 
Ravi Kanth D
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
My bad..the syntax was ok, its just that the divisor value at runtime was zero. The error message was saying "unable to parse expression.." that made me think something wrong with the variable assignment. Thanks.
 
Winston Gutkowski
Bartender
Pie
Posts: 10417
63
Eclipse IDE Hibernate Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ravi Kanth D wrote:I have a BigDecimal variable that I need to divide by Integer variable, below is my code, please let me know what is wrong.
varBigDecimal1.divide(BigDecimal.valueOf(varInteger1.doubleValue()))

There's nothing intrinsically wrong with it, but the redundant double conversion will slow things down.

varBigDecimal1.divide(BigDecimal.valueOf(varInteger1))

will work just as well.

Winston
 
Saifuddin Merchant
Ranch Hand
Posts: 607
Firefox Browser Java Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Winston Gutkowski wrote:
There's nothing intrinsically wrong with it, but the redundant double conversion will slow things down.

varBigDecimal1.divide(BigDecimal.valueOf(varInteger1))will work just as well.

Winston


More computing sins are committed in the name of efficiency (without necessarily achieving it) than for any other single reason...including blind stupidity.



Nothing wrong with the advice (it's probably sound) but yet whenever I see someone take about efficiency I love to use that quote ....
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic