File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Mod(%) operator

 
Shiva Mohan
Ranch Hand
Posts: 484
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator



When taking y value as 0 in i1,it gives y1 as true.(0==0).When taking y value as 1 in i1,1 mod 2====>1/2=quotient 0.5 and reminder 0.that way I had taken.(calculator return quotient value 0.5.but compiler return quotient value 0.0 and remainder 0.).

I know that mod operator will give remainder part only.But when I take 1%2 working,I always take 0 as the remainder and 0.5 as the quotient.How comw the 1%2 value is quotient 0.0 and remainder 0?
 
Rusty Shackleford
Ranch Hand
Posts: 490
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Because they are integer values, not floating point values.
 
Campbell Ritchie
Sheriff
Pie
Posts: 47228
52
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
. . . because you are using integer division, which loses its remainder.does not produce a double result. It is integer division which produces an integer result and it is then cast to a double.
 
Campbell Ritchie
Sheriff
Pie
Posts: 47228
52
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Posted by Rusty Shackleford
Because they are integer values, not floating point values.
Snap.
 
Tony Morris
Ranch Hand
Posts: 1608
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Because it's not the mod (or modulus) operator nor does it behave like the modulus operator (which Java does not have).

It's the remainder operator, which is described in the JLS. The rest is explanatory from that point on.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic