aspose file tools*
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes class Math's round method Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "class Math Watch "class Math New topic
Author

class Math's round method

payal bansal
Greenhorn

Joined: May 01, 2001
Posts: 23
Can anyone tell me the reason for this o/p???
float f4 = -5.5f;
float f7 = 5.5f;

System.out.println("Round f4 is " + Math.round(f4)); ------>-5
System.out.println("Round f7 is " + Math.round(f7)); -------->6
Cindy Glass
"The Hood"
Sheriff

Joined: Sep 29, 2000
Posts: 8521
Because it is rounding "up".
6 is the next higher integer than 5.5
-5 is the next higher integer than -5.5


"JavaRanch, where the deer and the Certified play" - David O'Meara
js yang
Ranch Hand

Joined: May 09, 2001
Posts: 40
Keep in mind that .5 rounds up to the next highest inter. For example, 1.5 will round up to 2. So, what will -1.5 round up to? -1 and not -2 because you are rounding the number to the next highest integer--which is -1 and not -2.
oops...Cindy beat me by 2 minutes. What she said is correct.
[This message has been edited by js yang (edited June 10, 2001).]
payal bansal
Greenhorn

Joined: May 01, 2001
Posts: 23
Thanks for replying. But do tell me onething------
when float f4 = -5.6f;
Math.round(f4)-------->-6 Why??? Why don't it roundsup to -5?
payal bansal
Greenhorn

Joined: May 01, 2001
Posts: 23
Thanks for replying. But do tell me onething------
when float f4 = -5.6f;
Math.round(f4)-------->-6 Why??? Why don't it roundsup to -5?
Junilu Lacar
Bartender

Joined: Feb 26, 2001
Posts: 4699
    
    7

Payal,
The round method will round to the nearest integer, which in the case of -5.6 would be -6. The rounding to -5 would apply for values of -5.5 to -5.0. On a number line:
<pre>
neg <--|--.--.--.--.--|--|--.--.--.--|----> pos
-6 -5.6 -5.5 -5.0
</pre>
Originally posted by payal bansal:
Thanks for replying. But do tell me onething------
when float f4 = -5.6f;
Math.round(f4)-------->-6 Why??? Why don't it roundsup to -5?


Junilu - [How to Ask Questions] [How to Answer Questions]
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: class Math's round method