< prev index next >

src/java.base/share/classes/java/math/RoundingMode.java

Print this page

        

@@ -49,12 +49,13 @@
  * {@code roundingMode} set to the rounding mode in question), and
  * calling {@link BigDecimal#round round} on this number with the
  * proper {@code MathContext}.  A summary table showing the results
  * of these rounding operations for all rounding modes appears below.
  *
- *<table border>
+ *<table class="plain">
  * <caption><b>Summary of Rounding Operations Under Different Rounding Modes</b></caption>
+ * <thead>
  * <tr><th></th><th colspan=8>Result of rounding input to one digit with the given
  *                           rounding mode</th>
  * <tr style="vertical-align:top">
  * <th>Input Number</th>         <th>{@code UP}</th>
  *                                           <th>{@code DOWN}</th>

@@ -62,10 +63,12 @@
  *                                                                       <th>{@code FLOOR}</th>
  *                                                                                    <th>{@code HALF_UP}</th>
  *                                                                                                   <th>{@code HALF_DOWN}</th>
  *                                                                                                                    <th>{@code HALF_EVEN}</th>
  *                                                                                                                                     <th>{@code UNNECESSARY}</th>
+ * </thead>
+ * <tbody>
  *
  * <tr style="text-align:right"><td>5.5</td>  <td>6</td>  <td>5</td>    <td>6</td>    <td>5</td>  <td>6</td>      <td>5</td>       <td>6</td>       <td>throw {@code ArithmeticException}</td>
  * <tr style="text-align:right"><td>2.5</td>  <td>3</td>  <td>2</td>    <td>3</td>    <td>2</td>  <td>3</td>      <td>2</td>       <td>2</td>       <td>throw {@code ArithmeticException}</td>
  * <tr style="text-align:right"><td>1.6</td>  <td>2</td>  <td>1</td>    <td>2</td>    <td>1</td>  <td>2</td>      <td>2</td>       <td>2</td>       <td>throw {@code ArithmeticException}</td>
  * <tr style="text-align:right"><td>1.1</td>  <td>2</td>  <td>1</td>    <td>2</td>    <td>1</td>  <td>1</td>      <td>1</td>       <td>1</td>       <td>throw {@code ArithmeticException}</td>

@@ -73,11 +76,12 @@
  * <tr style="text-align:right"><td>-1.0</td> <td>-1</td> <td>-1</td>   <td>-1</td>   <td>-1</td> <td>-1</td>     <td>-1</td>      <td>-1</td>      <td>-1</td>
  * <tr style="text-align:right"><td>-1.1</td> <td>-2</td> <td>-1</td>   <td>-1</td>   <td>-2</td> <td>-1</td>     <td>-1</td>      <td>-1</td>      <td>throw {@code ArithmeticException}</td>
  * <tr style="text-align:right"><td>-1.6</td> <td>-2</td> <td>-1</td>   <td>-1</td>   <td>-2</td> <td>-2</td>     <td>-2</td>      <td>-2</td>      <td>throw {@code ArithmeticException}</td>
  * <tr style="text-align:right"><td>-2.5</td> <td>-3</td> <td>-2</td>   <td>-2</td>   <td>-3</td> <td>-3</td>     <td>-2</td>      <td>-2</td>      <td>throw {@code ArithmeticException}</td>
  * <tr style="text-align:right"><td>-5.5</td> <td>-6</td> <td>-5</td>   <td>-5</td>   <td>-6</td> <td>-6</td>     <td>-5</td>      <td>-6</td>      <td>throw {@code ArithmeticException}</td>
- *</table>
+ * </tbody>
+ * </table>
  *
  *
  * <p>This {@code enum} is intended to replace the integer-based
  * enumeration of rounding mode constants in {@link BigDecimal}
  * ({@link BigDecimal#ROUND_UP}, {@link BigDecimal#ROUND_DOWN},

@@ -98,48 +102,56 @@
          * digit prior to a non-zero discarded fraction.  Note that this
          * rounding mode never decreases the magnitude of the calculated
          * value.
          *
          *<p>Example:
-         *<table border>
+         *<table class="plain">
          * <caption><b>Rounding mode UP Examples</b></caption>
+         *<thead>
          *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code UP} rounding
+         *</thead>
+         *<tbody>
          *<tr style="text-align:right"><td>5.5</td>  <td>6</td>
          *<tr style="text-align:right"><td>2.5</td>  <td>3</td>
          *<tr style="text-align:right"><td>1.6</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.1</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
          *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.1</td> <td>-2</td>
          *<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
          *<tr style="text-align:right"><td>-2.5</td> <td>-3</td>
          *<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
+         *</tbody>
          *</table>
          */
     UP(BigDecimal.ROUND_UP),
 
         /**
          * Rounding mode to round towards zero.  Never increments the digit
          * prior to a discarded fraction (i.e., truncates).  Note that this
          * rounding mode never increases the magnitude of the calculated value.
          *
          *<p>Example:
-         *<table border>
+         *<table class="plain">
          * <caption><b>Rounding mode DOWN Examples</b></caption>
+         *<thead>
          *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code DOWN} rounding
+         *</thead>
+         *<tbody>
          *<tr style="text-align:right"><td>5.5</td>  <td>5</td>
          *<tr style="text-align:right"><td>2.5</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.6</td>  <td>1</td>
          *<tr style="text-align:right"><td>1.1</td>  <td>1</td>
          *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
          *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.1</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.6</td> <td>-1</td>
          *<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
          *<tr style="text-align:right"><td>-5.5</td> <td>-5</td>
+         *</tbody>
          *</table>
          */
     DOWN(BigDecimal.ROUND_DOWN),
 
         /**

@@ -147,24 +159,28 @@
          * result is positive, behaves as for {@code RoundingMode.UP};
          * if negative, behaves as for {@code RoundingMode.DOWN}.  Note
          * that this rounding mode never decreases the calculated value.
          *
          *<p>Example:
-         *<table border>
+         *<table class="plain">
          * <caption><b>Rounding mode CEILING Examples</b></caption>
+         *<thead>
          *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code CEILING} rounding
+         *</thead>
+         *<tbody>
          *<tr style="text-align:right"><td>5.5</td>  <td>6</td>
          *<tr style="text-align:right"><td>2.5</td>  <td>3</td>
          *<tr style="text-align:right"><td>1.6</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.1</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
          *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.1</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.6</td> <td>-1</td>
          *<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
          *<tr style="text-align:right"><td>-5.5</td> <td>-5</td>
+         *</tbody>
          *</table>
          */
     CEILING(BigDecimal.ROUND_CEILING),
 
         /**

@@ -172,24 +188,28 @@
          * result is positive, behave as for {@code RoundingMode.DOWN};
          * if negative, behave as for {@code RoundingMode.UP}.  Note that
          * this rounding mode never increases the calculated value.
          *
          *<p>Example:
-         *<table border>
+         *<table class="plain">
          * <caption><b>Rounding mode FLOOR Examples</b></caption>
+         *<thead>
          *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code FLOOR} rounding
+         *</thead>
+         *<tbody>
          *<tr style="text-align:right"><td>5.5</td>  <td>5</td>
          *<tr style="text-align:right"><td>2.5</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.6</td>  <td>1</td>
          *<tr style="text-align:right"><td>1.1</td>  <td>1</td>
          *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
          *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.1</td> <td>-2</td>
          *<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
          *<tr style="text-align:right"><td>-2.5</td> <td>-3</td>
          *<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
+         *</tbody>
          *</table>
          */
     FLOOR(BigDecimal.ROUND_FLOOR),
 
         /**

@@ -199,24 +219,28 @@
          * fraction is &ge; 0.5; otherwise, behaves as for
          * {@code RoundingMode.DOWN}.  Note that this is the rounding
          * mode commonly taught at school.
          *
          *<p>Example:
-         *<table border>
+         *<table class="plain">
          * <caption><b>Rounding mode HALF_UP Examples</b></caption>
+         *<thead>
          *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code HALF_UP} rounding
+         *</thead>
+         *<tbody>
          *<tr style="text-align:right"><td>5.5</td>  <td>6</td>
          *<tr style="text-align:right"><td>2.5</td>  <td>3</td>
          *<tr style="text-align:right"><td>1.6</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.1</td>  <td>1</td>
          *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
          *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.1</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
          *<tr style="text-align:right"><td>-2.5</td> <td>-3</td>
          *<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
+         *</tbody>
          *</table>
          */
     HALF_UP(BigDecimal.ROUND_HALF_UP),
 
         /**

@@ -225,24 +249,28 @@
          * down.  Behaves as for {@code RoundingMode.UP} if the discarded
          * fraction is &gt; 0.5; otherwise, behaves as for
          * {@code RoundingMode.DOWN}.
          *
          *<p>Example:
-         *<table border>
+         *<table class="plain">
          * <caption><b>Rounding mode HALF_DOWN Examples</b></caption>
+         *<thead>
          *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code HALF_DOWN} rounding
+         *</thead>
+         *<tbody>
          *<tr style="text-align:right"><td>5.5</td>  <td>5</td>
          *<tr style="text-align:right"><td>2.5</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.6</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.1</td>  <td>1</td>
          *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
          *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.1</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
          *<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
          *<tr style="text-align:right"><td>-5.5</td> <td>-5</td>
+         *</tbody>
          *</table>
          */
     HALF_DOWN(BigDecimal.ROUND_HALF_DOWN),
 
         /**

@@ -258,48 +286,56 @@
          * chiefly used in the USA.  This rounding mode is analogous to
          * the rounding policy used for {@code float} and {@code double}
          * arithmetic in Java.
          *
          *<p>Example:
-         *<table border>
+         *<table class="plain">
          * <caption><b>Rounding mode HALF_EVEN Examples</b></caption>
+         *<thead>
          *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code HALF_EVEN} rounding
+         *</thead>
+         *<tbody>
          *<tr style="text-align:right"><td>5.5</td>  <td>6</td>
          *<tr style="text-align:right"><td>2.5</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.6</td>  <td>2</td>
          *<tr style="text-align:right"><td>1.1</td>  <td>1</td>
          *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
          *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.1</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
          *<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
          *<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
+         *</tbody>
          *</table>
          */
     HALF_EVEN(BigDecimal.ROUND_HALF_EVEN),
 
         /**
          * Rounding mode to assert that the requested operation has an exact
          * result, hence no rounding is necessary.  If this rounding mode is
          * specified on an operation that yields an inexact result, an
          * {@code ArithmeticException} is thrown.
          *<p>Example:
-         *<table border>
+         *<table class="plain">
          * <caption><b>Rounding mode UNNECESSARY Examples</b></caption>
+         *<thead>
          *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code UNNECESSARY} rounding
+         *</thead>
+         *<tbody>
          *<tr style="text-align:right"><td>5.5</td>  <td>throw {@code ArithmeticException}</td>
          *<tr style="text-align:right"><td>2.5</td>  <td>throw {@code ArithmeticException}</td>
          *<tr style="text-align:right"><td>1.6</td>  <td>throw {@code ArithmeticException}</td>
          *<tr style="text-align:right"><td>1.1</td>  <td>throw {@code ArithmeticException}</td>
          *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
          *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
          *<tr style="text-align:right"><td>-1.1</td> <td>throw {@code ArithmeticException}</td>
          *<tr style="text-align:right"><td>-1.6</td> <td>throw {@code ArithmeticException}</td>
          *<tr style="text-align:right"><td>-2.5</td> <td>throw {@code ArithmeticException}</td>
          *<tr style="text-align:right"><td>-5.5</td> <td>throw {@code ArithmeticException}</td>
+         *</tbody>
          *</table>
          */
     UNNECESSARY(BigDecimal.ROUND_UNNECESSARY);
 
     // Corresponding BigDecimal rounding constant
< prev index next >