Vertically align numeric values in Java using Formatter

Java 8Object Oriented ProgrammingProgramming

To vertically align numeric values in Java, use Formatter. For working with Formatter class, import the following package.

import java.util.Formatter;

Take an array −

double arr[] = { 2.5, 4.8, 5.7, 6.5, 9.4, 8.4, 9.5, 10.2, 11.5 };

While displaying this double array values, use the %f to set spaces −

for (double d : arr) {
   f.format("%12.2f %12.2f %12.2f\n", d, Math.ceil(d), Math.floor(d));
}

Above, we have also set the decimal places i.e. 12.2f is for 2 decimal places.

The following is an example −

Example

 Live Demo

import java.util.Formatter;
public class Demo {
   public static void main(String[] argv) throws Exception {
      double arr[] = { 2.5, 4.8, 5.7, 6.5, 9.4, 8.4, 9.5, 10.2, 11.5 };
      Formatter f = new Formatter();
      f.format("%12s %12s %12s\n", "Points1", "Points2", "Points3");
      System.out.println("The point list...\n");
      for (double d : arr) {
         f.format("%12.2f %12.2f %12.2f\n", d, Math.ceil(d), Math.floor(d));
      }
      System.out.println(f);
   }
}

Output

The point list...
Points1  Points2  Points3
2.50     3.00     2.00
4.80     5.00     4.00
5.70     6.00     5.00
6.50     7.00     6.00
9.40     10.00    9.00
8.40     9.00     8.00
9.50     10.00    9.00
10.20    11.00    10.00
11.50    12.00    11.00
raja
Published on 21-Dec-2018 16:14:51
Advertisements