Padding values …

Here is an example of how to pad values with fill characters :

public class Main {
  
  public static <T> String pad(T str, int n, String right_pad, String filler) {
    return String.format("%1$" + right_pad + n + "s", str).replaceAll(" ", filler);
  }
  
  public static <T> String pad_left(T str, int n, String filler) {
    return pad(str, n, "", filler);
  }  
  public static <T> String pad_right(T str, int n, String filler) {
    return pad(str, n, "-", filler);
  }  
  
  public static <T> String pad_left(T str, int n) {
    return pad(str, n, "", " ");
  }  
  public static <T> String pad_right(T str, int n) {
    return pad(str, n, "-", " ");
  }  
  
  public static void main(String[] args) {
      System.out.println("pad(5,3)     : " + pad_left(5,3));
      System.out.println("pad(5,3,\"0\") : " + pad_left(5,3,"0"));
      System.out.println("pad(5,3,\"-\") : " + pad_right(5,3,"-"));
  }
}

-------

pad(5,3)     :   5
pad(5,3,"0") : 005
pad(5,3,"-") : 5--