因为习惯了C#中的padLeft和padRight,接触Java后突然失去这两个功能,觉得别扭,就试着实现了这两个方法。
Java中String.format()中带有字符串对齐功能如下:
System.out.println(String.format("*%1$-10s*", "moon"));
System.out.println(String.format("*%1$10s*", "moon"));
输出:
以上方法经过简单的变换可以得到:
public static String padWhitespaceLeft(String s, intlen) {return String.format("%1$" + len + "s", s);
}public static String padWhitespaceRight(String s, intlen) {return String.format("%1$-" + len + "s", s);
}
调用下面方法:
System.out.println("*" + padWhitespaceLeft("moon", 12) + "*");
System.out.println("*" + padWhitespaceRight("moon", 12)