permaculture playing cards
The moose likes Beginning Java and the fly likes division evaluates to zero Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of OCA Java SE 8 Programmer I Study Guide this week in the OCAJP 8 forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "division evaluates to zero" Watch "division evaluates to zero" New topic

division evaluates to zero

Lisa D'Aniello
Ranch Hand

Joined: Sep 25, 2003
Posts: 42
Ok, this is so stinkin' basic, I'm embarrassed to even post the question, but...

long section1score = Long.valueOf(request.getParameter("score1")).longValue() + Long.valueOf(request.getParameter("score2")).longValue();

double section1perct = (section1score/40)*100;

...Why on earth does this evaluate to zero??? section1score holds a value of 20.

marc weber

Joined: Aug 31, 2004
Posts: 11343

Integral division always truncates. If you want a floating-point result, you will need to perform the division with a floating-point type. One way to accomplish this is to simply make the literal 40 a double...


"We're kind of on the level of crossword puzzle writers... And no one ever goes to them and gives them an award." ~Joe Strummer
Lisa D'Aniello
Ranch Hand

Joined: Sep 25, 2003
Posts: 42
Thank you!

Goodness, what a silly oversight on my part...

Thanks Again!
I agree. Here's the link:
subject: division evaluates to zero
It's not a secret anymore!