类似...
System.out.println(String.format("%-4s %s:", "XXXX", "词语"));
System.out.println(String.format("%-4s %s:", "YY", "词语"));
它打印
XXXX 词语:
YY 词语:
或者
System.out.println(String.format("%4s %s:", "XXXX", "词语"));
System.out.println(String.format("%4s %s:", "YY", "词语"));
它打印
XXXX 词语:
YY 词语:
然后,您可以把这个包成一个方法调用,并通过前缀和后缀对为你做格式
例如...
public class Test1 {
public static void main(String[] args) {
System.out.println(formatLeftAligned("XXXX", "词语"));
System.out.println(formatLeftAligned("YY", "词语"));
System.out.println(formatRightAligned("XXXX", "词语"));
System.out.println(formatRightAligned("YY", "词语"));
}
public static String formatLeftAligned(String prefix, String suffix) {
return String.format("%-4s %s:", prefix, suffix);
}
public static String formatRightAligned(String prefix, String suffix) {
return String.format("%4s %s:", prefix, suffix);
}
}
或者
public class Test1 {
public static void main(String[] args) {
System.out.println(formatLeftAligned("XXXX", 4, "词语"));
System.out.println(formatLeftAligned("YY", 4, "词语"));
System.out.println(formatRightAligned("XXXX", 4, "词语"));
System.out.println(formatRightAligned("YY", 4, "词语"));
}
public static String formatLeftAligned(String prefix, int padding, String suffix) {
return String.format("%-" + padding + "s %s:", prefix, suffix);
}
public static String formatRightAligned(String prefix, int padding, String suffix) {
return String.format("%" + padding + "s %s:", prefix, sufix);
}
}
如果你想在填充更多的控制...你甚至可以使用可变参数的方法使该格式的方法来确定填充量它的自我,并返回格式化这些要求String秒的阵列,作为一种思想
更新
如果同时需要后缀和前缀,来填充,它可能更容易垫他们分开,例如...
public class Test1 {
public static void main(String[] args) {
System.out.println(String.format("%s %s:", padLeft("XXXX", 4), padLeft("??", 2)));
System.out.println(String.format("%s %s:", padRight("XXXX", 4), padRight("??", 2)));
System.out.println(String.format("%s %s:", padLeft("XXXX", 4), padRight("??", 2)));
System.out.println(String.format("%s %s:", padRight("XXXX", 4), padLeft("??", 2)));
System.out.println(String.format("%s %s:", padLeft("YY", 4), padLeft("??", 2)));
System.out.println(String.format("%s %s:", padRight("YY", 4), padRight("??", 2)));
System.out.println(String.format("%s %s:", padLeft("YY", 4), padRight("??", 2)));
System.out.println(String.format("%s %s:", padRight("YY", 4), padLeft("??", 2)));
System.out.println(String.format("%s %s:", padLeft("XXXX", 4), padLeft("?", 2)));
System.out.println(String.format("%s %s:", padRight("XXXX", 4), padRight("?", 2)));
System.out.println(String.format("%s %s:", padLeft("XXXX", 4), padRight("?", 2)));
System.out.println(String.format("%s %s:", padRight("XXXX", 4), padLeft("?", 2)));
System.out.println(String.format("%s %s:", padLeft("YY", 4), padLeft("?", 2)));
System.out.println(String.format("%s %s:", padRight("YY", 4), padRight("?", 2)));
System.out.println(String.format("%s %s:", padLeft("YY", 4), padRight("?", 2)));
System.out.println(String.format("%s %s:", padRight("YY", 4), padLeft("?", 2)));
}
public static String padLeft(String value, int padding) {
return String.format("%-" + padding + "s", value);
}
public static String padRight(String value, int padding) {
return String.format("%" + padding + "s", value);
}
}
不要忘记你可以复合格式...
XXXX 词语:
XXXX 词语:
XXXX 词语:
XXXX 词语:
YY 词语:
YY 词语:
YY 词语:
YY 词语:
XXXX 人 :
XXXX 人:
XXXX 人:
XXXX 人 :
YY 人 :
YY 人:
YY 人:
YY 人 :
更新
关注每一个格式化的需要separatly,例如....
System.out.println(String.format("%s=\"%s\"", padLeft("XXXX", 4), "词语"));
System.out.println(String.format("%s=\"%s\"", padLeft("YY", 4), "人"));
在这里,我们从什么它显示格式化 “XXXX” 和 “YY” 分开,这个打印...
XXXX="词语"
YY ="人"
更新 种
字体在这方面发挥了非常大的作用,例如...
正如你所看到的,中国文字扩大超出了“正常”的字符宽度,而事实上,每个中国人性格有它自己的宽度......
更新
如果你使用的秋千,你利用它的内置HTML(有限)的支持,例如
StringBuilder sb = new StringBuilder(128);
sb.append("
"); sb.append("词语"); sb.append(" | "); sb.append("end"); sb.append(" |
"); sb.append("人"); sb.append(" | "); sb.append("end"); sb.append(" |
JOptionPane.showMessageDialog(null, sb);