TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
 Specialized Dev Zones Research Center eBook Library .NET Java C++ Web Dev Architecture Database Security Open Source Enterprise Mobile Special Reports 10-Minute Solutions DevXtra Blogs Slideshow

 Home » Tip Bank » XML » XML with Java
Language: Java
Jan 6, 2000

### WEBINAR:On-Demand

Building the Right Environment to Support AI, Machine Learning and Deep Learning

# Java's Division and Modulus Operations

In Java you take the remainder with the modulus (%) operator, whereby the sign of the remainder follows the dividend, not the divisor. So (+5 % -2) will be, to the surprise of many, +1. Java division has the Euclidean property. When you multiply the quotient by the divisor and add the remainder, you get back to the dividend. Java's division is a truncated division. The following tabulates the matter:
`````` Signs   Division   Modulus
+ +     +5/+2=+2   +5%+2=+1
- +     -5/+2=-2   -5%+2=-1
+ -     +5/-2=-2   +5%-2=+1
- -     -5/-2=+2   -5%-2=-1``````
In general, if floored division is what you want (yielding the closest, smallest number to that number), you can write:
`` (dividend >= 0) ? (dividend / divisor) : ((dividend-divisor+1) / divisor);``
If you want ceiled division (yielding the closest, largest number to that number), you can write:
`` (dividend >= 0) ? ((dividend+divisor-1) / divisor) : (dividend / divisor);``
Note that you can also use:

`public static native double floor(double a)`

and

`public static native double ceil(double a)`

of the java.lang.Math class.

Behrouz Fallahi

 Submit a Tip Browse "XML" Tips Browse All Tips
Comment and Contribute

(Maximum characters: 1200). You have 1200 characters left.

Thanks for your registration, follow us on our social networks to keep up-to-date